價格區(qū)間突破策略(TB版)_第1頁
價格區(qū)間突破策略(TB版)_第2頁
價格區(qū)間突破策略(TB版)_第3頁
價格區(qū)間突破策略(TB版)_第4頁
價格區(qū)間突破策略(TB版)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

價格區(qū)間突破策略(TB版)邏輯流程過濾條件:過濾掉集合競價和小節(jié)休息時間的數(shù)據(jù)。計算基礎值:計算ATR值。計算最小變動價位(Minpoint)。選擇L1和L2(L1為較大周期參數(shù),L2為較小周期參數(shù))。計算長周期最高價區(qū)間(Upperband)和短周期最低價區(qū)間(Exitlong)。入場條件:當前沒有持倉(Marketposition==0)。當前最高價格大于長周期最高價區(qū)間(Upperband[1]+Minpoint)。成交量大于0。執(zhí)行買入操作,保護性止損價(ProtectStopL)計算為入場價減去IPS倍的ATR值。出場條件:當前持有多單(MarketPosition==1)。持倉時間大于0且成交量大于0。最低價格低于保護性止損價或短周期最低價區(qū)間減去Minpoint,則執(zhí)行賣出操作。做空信號代碼邏輯類似,但方向相反,參數(shù)和變量定義保持不變,僅入場和出場條件根據(jù)做空邏輯進行調(diào)整。總結(jié)該策略通過計算不同周期的價格區(qū)間來確定入場和出場條件。入場時,做多策略在價格突破長周期最高價區(qū)間時買入;做空策略則在價格跌破長周期最低價區(qū)間時賣空。出場時,根據(jù)保護性止損價或短周期價格區(qū)間來確定平倉時機。同時,策略通過ATR值和自定義參數(shù)來設置保護性止損,以控制風險。做多信號代碼ParamsNumericLength1(50);NumericLength2(30);NumericIPS(4);NumericAtrVal(10);VarsNumericSeriesProtectStopL;NumericSeriesATR;NumericSeriesUpperband;NumericSeriesLowerband;NumericSeriesExitlong;NumericSeriesExitshort;NumericL2;NumericL1;NumericMinpoint;BeginIf(!CallAuctionFilter())Return;Minpoint=Minmove*PriceScale;ATR=AvgTrueRange(AtrVal);L1=Max(Length1,Length2);L2=Min(Length1,Length2);Upperband=Highest(High,L1);Lowerband=Lowest(Low,L1);Exitlong=Lowest(Low,L2);Exitshort=Highest(High,L2);If(Marketposition==0andHigh>=Upperband[1]+MinpointAndVol>0){Buy(0,Max(Open,Upperband[1]+Minpoint));ProtectStopL=Entryprice-IPS*ATR[1];}If(MarketPosition==1andBarsSinceEntry>0AndVol>0){If(Low<=ProtectStopL[1]andProtectStopL[1]>=Exitlong[1]){Sell(0,Min(Open,ProtectStopL[1]));}Elseif(Low<=Exitlong[1]-Minpoint){Sell(0,Min(Open,Exitlong[1]-Minpoint));}}End策略說明:系統(tǒng)要素:1.計算50根k線最高價的區(qū)間2.計算30根k線最低價的區(qū)間入場條件:1.價格高于50根K線最高價的區(qū)間入場出場條件:1.當前價格低于30根K線最低價的區(qū)間出場2.當前價格低于入場價一定ATR波動率幅度出場做多代碼解讀:ParamsNumericLength1(50);//聲明數(shù)值參數(shù)Length1,初值50,即長周期區(qū)間參數(shù)。//NumericLength2(30);//聲明數(shù)值參數(shù)Length2,初值30,即短周期區(qū)間參數(shù)。//NumericIPS(4);//聲明數(shù)值參數(shù)IPS,初值4,保護止損波動率參數(shù)。//NumericAtrVal(10);//聲明數(shù)值參數(shù)AtrVal,初值10,波動率參數(shù)。//VarsNumericSeriesProtectStopL;//聲明數(shù)值序列變量ProtectStopL。//NumericSeriesATR;//聲明數(shù)值序列變量ATR。//NumericSeriesUpperband;//聲明數(shù)值序列變量Upperband。//NumericSeriesLowerband;//聲明數(shù)值序列變量Lowerband。//NumericSeriesExitlong;//聲明數(shù)值序列變量Exitlong。//NumericSeriesExitshort;//聲明數(shù)值序列變量Exitshort。//NumericL2;//聲明數(shù)值變量L2.//NumericL1;//聲明數(shù)值變量L1.//NumericMinpoint;//聲明數(shù)值變量Minpoint。//BeginIf(!CallAuctionFilter())Return;//集合競價和小節(jié)休息過濾。//Minpoint=Minmove*PriceScale;//一跳的固定公式。//ATR=AvgTrueRange(AtrVal);//計算ATR值。//L1=Max(Length1,Length2);//進場周期選擇較大的區(qū)間參數(shù)。//L2=Min(Length1,Length2);//出場周期選擇較小的區(qū)間參數(shù)。//Upperband=Highest(High,L1);//長周期最高價區(qū)間。//Lowerband=lowest(Low,L1);//長周期最低價區(qū)間。//Exitlong=Lowest(Low,L2);//短周期最低價區(qū)間。//Exitshort=Highest(high,L2);//短周期最高價區(qū)間。////系統(tǒng)入場。//If(Marketposition==0andHigh>=Upperband[1]+MinpointAndVol>0)//當前沒有持倉,且當前最高價格大于長周期最高價區(qū)間入場做多。//{Buy(0,Max(Open,Upperband[1]+Minpoint));//開多。//ProtectStopL=Entryprice-IPS*ATR[1];//保護性止損計算公式。//}//系統(tǒng)出場。//If(MarketPosition==1andBarsSinceEntry>0AndVol>0)//當前持有多單,且建倉數(shù)位大于0,且成交量大于0。//{If(Low<=ProtectStopL[1]andProtectStopL[1]>=Exitlong[1])//最低價格小于等于前一個保護性止損,且前一個保護性止損大于等于前一個短周期最低價區(qū)間。//{Sell(0,Min(Open,ProtectStopL[1]));//平倉。//}Elseif(Low<=Exitlong[1]-Minpoint)//價格低于短周期最低價區(qū)間出場。//{Sell(0,Min(Open,Exitlong[1]-Minpoint));//平倉。//}}End做空信號代碼ParamsNumericLength1(50);NumericLength2(30);NumericIPS(4);NumericAtrVal(10);VarsNumericSeriesProtectStopS;NumericSeriesATR;NumericSeriesUpperband;NumericSeriesLowerband;NumericSeriesExitlong;NumericSeriesExitshort;NumericL2;NumericL1;NumericMinpoint;BeginIf(!CallAuctionFilter())Return;Minpoint=Minmove*PriceScale;ATR=AvgTrueRange(AtrVal);L1=Max(Length1,Length2);L2=Min(Length1,Length2);Upperband=Highest(High,L1);Lowerband=lowest(Low,L1);Exitlong=Lowest(Low,L2);Exitshort=Highest(High,L2);If(Marketposition==0andLow<=Lowerband[1]-MinpointAndVol>0){Sellshort(0,Min(Open,Lowerband[1]-Minpoint));ProtectStopS=Entryprice+IPS*ATR[1];}If(MarketPosition==-1andBarsSinceEntry>0AndVol>0){If(High>=ProtectStopS[1]andProtectStopS[1]<=Exitshort[1]){BuyToCover(0,Max(Open,ProtectStopS[1]));}Elseif(High>=Exitshort[1]+Minpoint){BuyToCover(0,Max(Open,Exitshort[1]+Minpoint));}}End做空注解代碼://定義參數(shù),設置初始值。ParamsNumericLength1(50);//長周期區(qū)間參數(shù),初值50。NumericLength2(30);//短周期區(qū)間參數(shù),初值30。NumericIPS(4);//保護止損波動率參數(shù),初值4。NumericAtrVal(10);//ATR波動率參數(shù),初值10。//定義變量,初始化為0或布爾值。VarsNumericSeriesProtectStopS;//保護性止損價。NumericSeriesATR;//平均真實波動范圍。NumericSeriesUpperband;//上軌區(qū)間。NumericSeriesLowerband;//下軌區(qū)間。NumericSeriesExitlong;//多單出場價格。NumericSeriesExitshort;//空單出場價格。NumericL2;//短周期參數(shù)。NumericL1;//長周期參數(shù)。NumericMinpoint;//最小變動價位。//開始策略邏輯。BeginIf(!CallAuctionFilter())Return;//過濾掉集合競價和小節(jié)休息時間。Minpoint=Minmove*PriceScale;//計算最小變動價位。ATR=AvgTrueRange(AtrVal);//計算ATR值。L1=Max(Length1,Length2);//選擇較大的周期參數(shù)作為L1。L2=Min(Length1,Length2);//選擇較小的周期參數(shù)作為L2。Upperband=Highest(High,L1);//計算長周期內(nèi)最高價區(qū)間。Lowerband=Lowest(Low,L1);//計算長周期內(nèi)最低價區(qū)間。Exitlong=Lowest(Low,L2);//計算短周期內(nèi)最低價區(qū)間。Exitshort=Highest(High,L2);//計算短周期內(nèi)最高價區(qū)間。//系統(tǒng)入場條件。If(Marketposition==0andLow<=Lowerband[1]-MinpointAndVol>0){Sellshort(0,Min(Open,Lowerband[1]-Minpoint));//做空,價格為開盤價和下軌區(qū)間減去最小變動價位的較大值。ProtectStopS=Entryprice+IPS*ATR[1];//計算保護性止損價。}//系統(tǒng)出場條件。If(MarketPosition==-1andBarsSinceEntry>0AndVol>0){//如果最高價大于等于前一個保護性止損價,并且保護性止損價小于等于前一個短周期最高價區(qū)間,則平空。If(High>=Prote

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論