日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

易盛极星多合约回测(问题很多)

發布時間:2023/12/19 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 易盛极星多合约回测(问题很多) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?注意,使用此函數,在考慮手續費時,無法做到統一。

import talib import numpy as np import EsTalib from EsSeries import NumericSeries# 策略參數字典 g_params['p1'] = 5 g_params['p2'] = 10 g_params['p3'] = 120 g_params['ZQ'] = 5 #交易周期# 合約名稱列表 HYMCLB = [ "INE|Z|SC|MAIN","INE|Z|NR|MAIN","INE|Z|LU|MAIN","ZCE|Z|PK|MAIN","ZCE|Z|PF|MAIN","ZCE|Z|SA|MAIN","ZCE|Z|CF|MAIN","ZCE|Z|AP|MAIN","ZCE|Z|UR|MAIN","ZCE|Z|CJ|MAIN", "ZCE|Z|OI|MAIN","ZCE|Z|RM|MAIN","ZCE|Z|MA|MAIN","ZCE|Z|TA|MAIN","ZCE|Z|FG|MAIN","ZCE|Z|SF|MAIN","ZCE|Z|SM|MAIN","DCE|Z|M|MAIN","DCE|Z|Y|MAIN","DCE|Z|A|MAIN","DCE|Z|B|MAIN","DCE|Z|P|MAIN","DCE|Z|C|MAIN","DCE|Z|CS|MAIN","DCE|Z|JD|MAIN","DCE|Z|L|MAIN","DCE|Z|V|MAIN","DCE|Z|EB|MAIN","DCE|Z|PP|MAIN","DCE|Z|J|MAIN","DCE|Z|JM|MAIN","DCE|Z|I|MAIN","DCE|Z|EG|MAIN","DCE|Z|PG|MAIN","DCE|Z|LH|MAIN","SHFE|Z|AU|MAIN","SHFE|Z|AG|MAIN","SHFE|Z|CU|MAIN","SHFE|Z|AL|MAIN","SHFE|Z|ZN|MAIN","SHFE|Z|NI|MAIN","SHFE|Z|SN|MAIN","SHFE|Z|PB|MAIN","SHFE|Z|RB|MAIN","SHFE|Z|SS|MAIN","SHFE|Z|HC|MAIN","SHFE|Z|FU|MAIN","SHFE|Z|BU|MAIN","SHFE|Z|RU|MAIN","SHFE|Z|SP|MAIN" ]KCSL=1 #開倉手數 HDCS=2 #滑點參數# 策略開始運行時執行該函數一次 def initialize(context): # 訂閱K線周期數據for x in HYMCLB :SetBarInterval(x,'M',g_params['ZQ'],'A') # 策略觸發事件每次觸發時都會執行該函數 def handle_data(context):for x in HYMCLB :if CurrentBar(x,'M',g_params['ZQ']) < g_params['p3'] :returnma1 =talib.MA(Close(x,'M',g_params['ZQ']), g_params['p1'])ma2 =talib.MA(Close(x,'M',g_params['ZQ']), g_params['p2'])ma3 =talib.MA(Close(x,'M',g_params['ZQ']), g_params['p3'])# LogInfo(x,"ma1:",ma1[-1],"ma2:",ma2[-1],"ma3:",ma3[-1])if len(ma3)>g_params['p3'] and MarketPosition(x) != 1 and OpenInt(x,'M',g_params['ZQ'])[-1]>12000 \and ma1[-2]>ma3[-2] and ma1[-3]<ma3[-3] :Buy(KCSL,Open(x,'M',g_params['ZQ'])[-1]+PriceTick(x)*HDCS,x)if len(ma3)>g_params['p3'] and MarketPosition(x) ==1 and OpenInt(x,'M',g_params['ZQ'])[-1]>12000 \and BarsSinceLastBuyEntry(x)>2 and BuyPosition(x)<3 \and Close(x,'M',g_params['ZQ'])[-2]>ma3[-2] and ma1[-2]>ma2[-2] and ma1[-3]<ma2[-3] :Buy(KCSL,Open(x,'M',g_params['ZQ'])[-1]+PriceTick(x)*HDCS,x)if len(ma3)>g_params['p3'] and MarketPosition(x) != -1 and OpenInt(x,'M',g_params['ZQ'])[-1]>12000 \and ma1[-2]<ma3[-2] and ma1[-3]>ma3[-3] :SellShort(KCSL,Open(x,'M',g_params['ZQ'])[-1]-PriceTick(x)*HDCS,x)if len(ma3)>g_params['p3'] and MarketPosition(x) ==-1 and OpenInt(x,'M',g_params['ZQ'])[-1]>12000 \and BarsSinceLastSellEntry(x)>2 and SellPosition(x)<3 \and Close(x,'M',g_params['ZQ'])[-2]<ma3[-2] and ma1[-2]<ma2[-2] and ma1[-3]>ma2[-3] :SellShort(KCSL,Open(x,'M',g_params['ZQ'])[-1]-PriceTick(x)*HDCS,x)

總結

以上是生活随笔為你收集整理的易盛极星多合约回测(问题很多)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。