淺談python量化 雙均線策略(金叉死叉)
#小策略,策略邏輯是在金叉時候買進,死叉時候賣出,所謂金叉死叉是兩條均線的交叉,當(dāng)短期均線上穿長期均線為金叉,反之為死叉
#下面是策略代碼及結(jié)構(gòu)
# 導(dǎo)入函數(shù)庫 from jqdata import * # 初始化函數(shù) def initialize(context): # 設(shè)定滬深300作為基準(zhǔn) set_benchmark('000300.XSHG') # True為開啟動態(tài)復(fù)權(quán)模式,使用真實價格交易 set_option('use_real_price', True) # 股票類交易手續(xù)費是:買入時傭金萬分之三,賣出時傭金萬分之三加千分之一印花稅, 每筆交易傭金最低扣5塊錢 set_order_cost(OrderCost(open_tax=0, close_tax=0.001, \ open_commission=0.0003, close_commission=0.0003,\ close_today_commission=0, min_commission=5), type='stock') #華誼股票 g.security='300027.XSHE' #設(shè)置每天運行 run_daily(handle) def handle(context): security=g.security n5=5 n20=20 # 獲取股票的收盤價 close_data = attribute_history(security, n20, '1d',"close",df=False) print(close_data) # 取得過去 ma_n1 天的平均價格 ma_n5 = close_data['close'][-n5:].mean() # 取得過去 ma_n2 天的平均價格 ma_n20 = close_data['close'][-n20:].mean() print(ma_n5,ma_n20) # 取得當(dāng)前的現(xiàn)金 cash = context.portfolio.available_cash # 如果當(dāng)前有余額 if ma_n5 > ma_n20: # 用所有 cash 買入股票,order_value是買賣價值 order_value(security, cash) # 記錄這次買入 log.info("Buying %s" % security) # 如果n5日均線小于n20日均線,并且目前有頭寸 elif ma_n5 < ma_n20 and context.portfolio.positions[security].closeable_amount > 0: # 全部賣出,order_target是買賣數(shù)量 order_target(security, 0) # 記錄這次賣出 log.info("Selling %s" % (security)) # 繪制n5日均線價格 record(ma_n5=ma_n5) # 繪制n20日均線價格 record(ma_n20=ma_n20)
#整體結(jié)果在12-16年回測測試結(jié)果效益不錯,阿爾法貝塔最大回撤也還行,難點是在策略和框架的使用和調(diào)用,這就是這次的雙均線策略記錄
補充知識:(多頭、空頭、金叉、死叉、賣出信號、買出信號)的python處理
1.指標(biāo)概念
均值性指標(biāo):以平均數(shù)據(jù)作為參考的指標(biāo)
隨機性指標(biāo):以最高價最低價等為參考的指標(biāo)
2.多頭、空頭、金叉、死叉、賣出信號、買出信號
多頭:短期均線在長期均線上方
空頭:短期均線在長期均線下方
金叉:短期均線向上穿越長期均線
死叉:短期均線向下穿越長期均線
買出信號:金叉 + 一定的條件
賣出出信號:死叉 + 一定的條件
3.Python實現(xiàn):以KDJ為例
4.測試:篩選滬深股票中賣出信號的股票
以上這篇淺談python量化 雙均線策略(金叉死叉)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Python Tkinter實現(xiàn)剪刀石頭布小游戲功能
這篇文章主要介紹了使用Python Tkinter實現(xiàn)剪刀石頭布小游戲功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10pandas如何統(tǒng)計某一列或某一行的缺失值數(shù)目
這篇文章主要介紹了pandas如何統(tǒng)計某一列或某一行的缺失值數(shù)目,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05Pytorch 擴展Tensor維度、壓縮Tensor維度的方法
這篇文章主要介紹了Pytorch 擴展Tensor維度、壓縮Tensor維度的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09