版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
自適應周期策略(贏智版)本策略是一種基于自適應周期和布林帶交易策略的量化模型。該模型通過動態(tài)調整觀察周期數(shù)來適應市場的波動性變化,并使用布林帶指標來確定交易信號。核心觀點包括:-**自適應周期調整**:通過計算波動率變化比率來動態(tài)調整觀察周期數(shù),確保自適應引擎在設定的范圍內。-**布林帶指標應用**:利用布林帶指標的上軌和下軌來確定買入和賣出信號。-**交易信號生成**:根據(jù)收盤價與布林帶上下軌的關系,生成相應的買入、賣出和平倉信號。###自適應周期調整-**波動率計算**:首先,計算過去30天收盤價的標準差,分別得到當天和昨天的波動率。-**波動率變化比率**:計算波動率的變化比率,即今天波動率與昨天波動率的差除以今天的波動率。-**觀察周期數(shù)調整**:根據(jù)波動率的變化比率調整觀察周期數(shù),確保其在設定的上限和下限之間。-**四舍五入處理**:將調整后的觀察周期數(shù)四舍五入到最近的整數(shù)。###布林帶指標應用-**布林帶上軌和下軌**:使用調整后的觀察周期數(shù)和設定的布林帶觸發(fā)值,計算布林帶的上軌和下軌。-**買入和賣出信號**:-如果收盤價高于布林帶上軌,則在下一個交易日以買入點設置買入止損單。-如果收盤價低于布林帶下軌,則在下一個交易日以賣出點設置賣出止損單。###交易信號生成-**買入信號**:當收盤價高于布林帶上軌時,生成買入信號。-**賣出信號**:當收盤價低于布林帶下軌時,生成賣出信號。-**多頭平倉信號**:如果市場持倉為多頭,則在下一個交易日以多頭平倉點設置止損賣出。-**空頭平倉信號**:如果市場持倉為空頭,則在下一個交易日以空頭平倉點設置買入平倉。###多頭平倉點與空頭平倉點-**多頭平倉點**:計算過去觀察周期內的收盤價平均值,作為多頭平倉點。-**空頭平倉點**:同樣計算過去觀察周期內的收盤價平均值,作為空頭平倉點。該策略通過動態(tài)調整觀察周期數(shù)來適應市場的波動性變化,并使用布林帶指標來確定交易信號。具體的交易信號包括買入、賣出、多頭平倉和空頭平倉信號,均基于布林帶上下軌和自適應周期數(shù)的計算結果。通過這些方法,策略旨在捕捉市場的波動性變化,實現(xiàn)穩(wěn)健的交易表現(xiàn)。以下是對每行代碼的注解:指標解釋ceilingAmt:=60;#定義上限金額為60floorAmt:=20;#定義下限金額為20bolBandTrig:=2;#定義一個變量bolBandTrig并賦值為2todayVolatility:=STD(CLOSE,30);#計算收盤價的30日標準差,并將結果賦給todayVolatilityyesterDayVolatility:=STD(REF(CLOSE,1),30);#計算前一日收盤價的30日標準差,并將結果賦給yesterDayVolatility#yesterDayVolatility:=REF(STD(CLOSE,30),1);#注釋:因為今天沒有收完盤所以,采用今天的數(shù)據(jù)不準deltaVolatility:=(todayVolatility-yesterDayVolatility)/todayVolatility;#計算波動率的變化率lookBackDays2:=N*(1+deltaVolatility);#根據(jù)某個未定義的變量N和波動率變化率計算一個中間值lookBackDays2lookBackDays1:=INTPART(lookBackDays2);#對lookBackDays2取整,并將結果賦給lookBackDays1lookBackDays0:=MIN(lookBackDays1,ceilingAmt);#取lookBackDays1和ceilingAmt中的較小值,并將結果賦給lookBackDays0lookBackDays:=MAX(lookBackDays0,floorAmt);#取lookBackDays0和floorAmt中的較大值,并將結果賦給lookBackDays#lookBackDays:=VALUEWHEN(lookBackDays1<60ANDlookBackDays1>20,lookBackDays1);#注釋:在上下界限之間就選這個值#lookBackDays:=VALUEWHEN(MIN(lookBackDays1,ceilingAmt)=MAX(lookBackDays1,floorAmt),lookBackDays1);MidLine:=MA(CLOSE,lookBackDays);#計算收盤價的lookBackDays日移動平均值,并將結果賦給MidLineBand:=STD(CLOSE,lookBackDays);#計算收盤價的lookBackDays日標準差,并將結果賦給BandupBand:=MidLine+bolBandTrig*Band;#計算上軌線的值dnBand:=MidLine-bolBandTrig*Band;#計算下軌線的值buyPoint:=HHV(REF(HIGH,1),lookBackDays);#計算前一日最高價在lookBackDays周期內的最高值,并將結果賦給buyPointsellPoint:=LLV(REF(LOW,1),lookBackDays);#計算前一日最低價在lookBackDays周期內的最低值,并將結果賦給sellPointlongLiqPoint:=MA(REF(CLOSE,1),lookBackDays);#計算前一日收盤價的lookBackDays日移動平均值,并將結果賦給longLiqPointshortLiqPoint:=MA(REF(CLOSE,1),lookBackDays);#計算前一日收盤價的lookBackDays日移動平均值,并將結果賦給shortLiqPointVERTLINE(CLOSE>upBandANDCROSS(HIGH,buyPoint),COLORRED);#當收盤價大于上軌線且最高價上穿buyPoint時繪制垂直紅線VERTLINE(CROSS(longLiqPoint,C),COLORGREEN);#當longLiqPoint上穿當前收盤價時繪制垂直綠線TMP:=OPEN-CLOSE;#計算開盤價與收盤價的差值,并將結果賦給TMPDRAWLINE(TMP>0.00001,HIGH,TMP>0.00001,OPEN,COLORCYAN);#當TMP大于0.00001時,繪制從HIGH到OPEN的青色線DRAWLINE(TMP>0.00001,LOW,TMP>0.00001,CLOSE,COLORCYAN);#當TMP大于0.00001時,繪制從LOW到CLOSE的青色線DRAWLINE(TMP<-0.00001,HIGH,TMP<-0.00001,CLOSE,COLORRED);#當TMP小于-0.00001時,繪制從HIGH到CLOSE的紅線DRAWLINE(TMP<-0.00001,LOW,TMP<-0.00001,OPEN,COLORRED);#當TMP小于-0.00001時,繪制從LOW到OPEN的紅線DRAWLINE(ABS(TMP)<0.00001,LOW,ABS(TMP)<0.00001,OPEN,COLORWHITE);#當TMP的絕對值小于0.00001時,繪制從LOW到OPEN的白線DRAWLINE(ABS(TMP)<0.00001,HIGH,ABS(TMP)<0.00001,OPEN,COLORWHITE);#當TMP的絕對值小于0.00001時,繪制從HIGH到OPEN的白線STICKLINE(TMP>0,OPEN,CLOSE,COLORCYAN,0);#當TMP大于0時,繪制青色的柱狀線STICKLINE(TMP<=0,OPEN,CLOSE,COLORRED,1);#當TMP小于等于0時,繪制紅色的柱狀線
指標公式代碼N:=10;ceilingAmt:=60;floorAmt:=20;bolBandTrig:=2;todayVolatility:=STD(CLOSE,30);yesterDayVolatility:=STD(REF(CLOSE,1),30);//yesterDayVolatility:=REF(STD(CLOSE,30),1);//因為今天沒有收完盤所以,采用今天的數(shù)據(jù)不準:deltaVolatility:=(todayVolatility-yesterDayVolatility)/todayVolatility;lookBackDays2:=N*(1+deltaVolatility);lookBackDays1:=INTPART(lookBackDays2);//取整lookBackDays0:=MIN(lookBackDays1,ceilingAmt);//比天花板低lookBackDays:=MAX(lookBackDays0,floorAmt);//比地板高//lookBackDays:=VALUEWHEN(lookBackDays1<60ANDlookBackDays1>20,lookBackDays1);//在上下界限之間就選這個值,//lookBackDays:=VALUEWHEN(MIN(lookBackDays1,ceilingAmt)=MAX(lookBackDays1,floorAmt),lookBackDays1);MidLine:=MA(CLOSE,lookBackDays);Band:=STD(CLOSE,lookBackDays);upBand:=MidLine+bolBandTrig*Band;dnBand:=MidLine-bolBandTrig*Band;buyPoint:=HHV(REF(HIGH,1),lookBackDays);sellPoint:=LLV(REF(LOW,1),lookBackDays);longLiqPoint:=MA(REF(CLOSE,1),lookBackDays);shortLiqPoint:=MA(REF(CLOSE,1),lookBackDays);VERTLINE(CLOSE>upBandANDCROSS(HIGH,buyPoint),COLORRED);VERTLINE(CROSS(longLiqPoint,C),COLORGREEN);TMP:=OPEN-CLOSE;DRAWLINE(TMP>0.00001,HIGH,TMP>0.00001,OPEN,COLORCYAN);DRAWLINE(TMP>0.00001,LOW,TMP>0.00001,CLOSE,COLORCYAN);DRAWLINE(TMP<-0.00001,HIGH,TMP<-0.00001,CLOSE,COLORRED);DRAWLINE(TMP<-0.00001,LOW,TMP<-0.00001,OPEN,COLORRED);DRAWLINE(ABS(TMP)<0.00001,LOW,ABS(TMP)<0.00001,OPEN,COLORWHITE);DRAWLINE(ABS(TMP)<0.00001,HIGH,ABS(TMP)<0.00001,OPEN,COLORWHITE);STICKLINE(TMP>0,OPEN,CLOSE,COLORCYAN,0);STICKLINE(TMP<=0,OPEN,CLOSE,COLORRED,1);信號代碼注解ceilingAmt:=60;//定義一個參數(shù),表示天花板值,用于限制自適應引擎查看周期數(shù)的上限floorAmt:=20;//定義一個參數(shù),表示地板值,用于限制自適應引擎查看周期數(shù)的下限bolBandTrig:=2;//定義一個參數(shù),表示布林帶觸發(fā)值,用于計算布林帶的上下軌todayVolatility:=STD(CLOSE,30);//計算過去30天收盤價的標準差,并將其存儲在變量todayVolatility中yesterDayVolatility:=STD(REF(CLOSE,1),30);//計算過去30天(前一日)收盤價的標準差,并將其存儲在變量yesterDayVolatility中deltaVolatility:=(todayVolatility-yesterDayVolatility)/todayVolatility;//計算波動率的變化比率,并將其存儲在變量deltaVolatility中l(wèi)ookBackDays2:=N*(1+deltaVolatility);//計算新的lookBackDays值,其中N是某個未知的常數(shù)lookBackDays1:=INTPART(lookBackDays2);//取整//將lookBackDays2值取整,并將其存儲在變量lookBackDays1中l(wèi)ookBackDays0:=MIN(lookBackDays1,ceilingAmt);//比天花板低//將lookBackDays1與ceilingAmt進行比較,取較小值,并將其存儲在變量lookBackDays0中l(wèi)ookBackDays:=MAX(lookBackDays0,floorAmt);//比地板高//將lookBackDays0與floorAmt進行比較,取較大值,并將其存儲在變量lookBackDays中MidLine:=MA(CLOSE,lookBackDays);//計算過去lookBackDays周期內的收盤價移動平均線,并將其存儲在變量MidLine中Band:=STD(CLOSE,lookBackDays);//計算過去lookBackDays周期內的收盤價標準差,并將其存儲在變量Band中upBand:=MidLine+bolBandTrig*Band;//計算布林帶上軌,并將其存儲在變量upBand中dnBand:=MidLine-bolBandTrig*Band;//計算布林帶下軌,并將其存儲在變量dnBand中buyPoint:=HHV(REF(HIGH,1),lookBackDays);//計算過去lookBackDays周期內的最高價,并將其存儲在變量buyPoint中sellPoint:=LLV(REF(LOW,1),lookBackDays);//計算過去lookBackDays周期內的最低價,并將其存儲在變量sellPoint中l(wèi)ongLiqPoint:=MA(REF(CLOSE,1),lookBackDays);//計算過去lookBackDays周期內的收盤價移動平均線,并將其存儲在變量longLiqPoint中shortLiqPoint:=MA(REF(CLOSE,1),lookBackDays);//計算過去lookBackDays周期內的收盤價移動平均線,并將其存儲在變量shortLiqPoint中CLOSE>upBandANDCROSS(HIGH,buyPoint),BK;//如果收盤價高于布林帶上軌,并且高點點位超過或等于buyPoint,則買入CROSS(longLiqPoint,C),SP;//如果多頭平倉點(longLiqPoint)超過當前收盤價(C),則平倉策略信號代碼ceilingAmt:=60;floorAmt:=20;bolBandTrig:=2;todayVolatility:=STD(CLOSE,30);yesterDayVolatility:=STD(REF(CLOSE,1),30);//yesterDayVolatility:=REF(STD(CLOSE,30),1);//因為今天沒有收完盤所以,采用今天的數(shù)據(jù)不準:deltaVolatility:=(todayVolatility-yesterDayVolatility)/todayVolati
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教部編版七年級歷史下冊全冊教案
- 2025年高考歷史一輪復習之各具特色的國家
- 2024年西藏林芝地區(qū)單招職業(yè)傾向性測試題庫
- 2024年稅務師題庫標準卷
- 2024年美麗的花瓶教案
- 2024年福建省《輔警招聘考試必刷500題》考試題庫及答案
- 第4課 日本明治維新(分層作業(yè))(解析版)
- 天津市部分區(qū)2024屆高三上學期期末考試試題語文(含解析)
- DB33T 2313-2021 內陸水域人工魚巢建設技術規(guī)范
- 2025集體談判和集體合同
- 第十五章專題訓練4.電路圖與實物圖課件人教版物理九年級全一冊
- 跳繩體育教案
- 四川省住宅設計標準
- 2024-2030年中國自然教育行業(yè)市場發(fā)展分析及前景趨勢與投資研究報告
- 12S522 混凝土模塊式排水檢查井
- 人感染禽流感診療方案(2024年版)
- 居家養(yǎng)老服務報價明細表
- 食材配送服務方案投標方案(技術方案)
- 年產(chǎn)15000噸硫酸鋁項目環(huán)評報告表
- 2023-2024學年湖北省孝感市云夢縣八年級(上)期末英語試卷
- 2024年一級注冊建筑師理論考試題庫ab卷
評論
0/150
提交評論