唐奇安通道(TB版)_第1頁
唐奇安通道(TB版)_第2頁
唐奇安通道(TB版)_第3頁
唐奇安通道(TB版)_第4頁
唐奇安通道(TB版)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

唐奇安通道(TB版)一、策略概述該策略是一種基于唐奇安通道的交易策略,通過計算長周期和短周期的最高價與最低價來確定交易信號。策略包括開倉、止盈加倉和止損等部分。二、參數(shù)設置長周期(LongLength):20,用于計算唐奇安通道上軌和下軌。短周期(ShortLength):10,用于計算離市時的N周期最高價和最低價。增倉比例(TrailingScale):0.5,用于止盈加倉時的價格計算。止損比例(StopLossSet):2,用于計算止損價格。交易數(shù)量(Lots):1,每次交易的數(shù)量。三、變量定義最小變動單位(MinPoint):未具體使用。ATR(AvgTR):平均真實范圍,用于平滑價格變動。N值(N):用于后續(xù)價格計算。唐奇安通道上軌(DonchianHi):長周期內(nèi)的最高價。唐奇安通道下軌(DonchianLo):長周期內(nèi)的最低價。離市上軌(ExitHighestPrice):短周期內(nèi)的最高價。離市下軌(ExitLowestPrice):短周期內(nèi)的最低價。開倉價格(myEntryPrice):買入或賣出的價格。平倉價格(myExitPrice):賣出或買入平倉的價格。當前Bar交易標志(SendOrderThisBar):記錄當前Bar是否有交易。前一次開倉價格(preEntryPrice):記錄前一次開倉的價格。四、策略邏輯開倉邏輯:當當前價格高于唐奇安通道上軌且市場無持倉時,以當前價格或開盤價(跳空時)買入。當當前價格低于唐奇安通道下軌且市場無持倉時,以當前價格或開盤價(跳空時)賣出。止盈加倉邏輯:持有多頭倉位時,若價格低于短周期最低價,則平倉。若開盤價即超過前一次開倉價加上增倉比例的N值,則直接以開盤價增倉。若最高價持續(xù)高于前一次開倉價加上增倉比例的N值,則繼續(xù)增倉。持有空頭倉位時,邏輯相反。止損邏輯:持倉期間,若價格觸及止損條件(多頭時低于前一次開倉價減去止損比例的N值,空頭時高于前一次開倉價加上止損比例的N值),且當前Bar未進行交易,則平倉。五、可視化與注釋使用PlotNumeric函數(shù)繪制唐奇安通道上軌、下軌、離市上軌和離市下軌。使用Commentary函數(shù)輸出關鍵變量值,如N值和前一次開倉價格,便于調(diào)試和監(jiān)控。六、注意事項大跳空時,開倉價格用開盤價代替,以避免不合理的價格成交。加倉Bar不止損,以防止因短期波動而觸發(fā)止損。策略中的價格計算邏輯需確保符合市場實際情況,避免滑點等因素對交易結果的影響。策略信號代碼注解:ParamsNumericLongLength(20);//長周期NumericShortLength(10);//短周期NumericTrailingScale(0.5);//增倉比例NumericStopLossSet(2);//止損比例NumericLots(1);//交易數(shù)量VarsNumericMinPoint;//最小變動單位NumericSeriesAvgTR;//ATRNumericN;//N值NumericSeriesDonchianHi;//唐奇安通道上軌,延后1個BarNumericSeriesDonchianLo;//唐奇安通道下軌,延后1個BarNumericExitHighestPrice;//離市時判斷需要的N周期最高價NumericExitLowestPrice;//離市時判斷需要的N周期最低價NumericmyEntryPrice;//開倉價格NumericmyExitPrice;//平倉價格BoolSendOrderThisBar(False);//當前Bar有過交易NumericSeriespreEntryPrice(0);//前一次開倉的價格BeginIf(BarStatus==0){preEntryPrice=InvalidNumeric;}Else{preEntryPrice=preEntryPrice[1];}AvgTR=XAverage(TrueRange,LongLength);N=AvgTR[1];DonchianHi=HighestFC(High[1],LongLength);DonchianLo=LowestFC(Low[1],LongLength);ExitLowestPrice=LowestFC(Low[1],ShortLength);ExitHighestPrice=HighestFC(High[1],ShortLength);Commentary("N="+Text(N));Commentary("preEntryPrice="+Text(preEntryPrice));PlotNumeric("上軌",DonchianHi);PlotNumeric("下軌",DonchianLo);PlotNumeric("退出上軌",ExitHighestPrice);PlotNumeric("退出下軌",ExitLowestPrice);//開倉//If(MarketPosition==0&&High>DonchianHi){myEntryPrice=min(high,DonchianHi);myEntryPrice=IIF(myEntryPrice<Open,Open,myEntryPrice);//大跳空的時候用開盤價代替preEntryPrice=myEntryPrice;Buy(Lots,myEntryPrice);SendOrderThisBar=True;}If(MarketPosition==0&&Low<DonchianLo){myEntryPrice=max(low,DonchianLo);myEntryPrice=IIF(myEntryPrice>Open,Open,myEntryPrice);//大跳空的時候用開盤價代替preEntryPrice=myEntryPrice;SendOrderThisBar=True;SellShort(Lots,myEntryPrice);}//止盈加倉//If(MarketPosition==1){Commentary("ExitLowestPrice="+Text(ExitLowestPrice));If(Low<ExitLowestPrice){myExitPrice=max(Low,ExitLowestPrice);myExitPrice=IIF(myExitPrice>Open,Open,myExitPrice);//大跳空的時候用開盤價代替Sell(0,myExitPrice);//數(shù)量用0的情況下將全部平}Else{If(preEntryPrice!=InvalidNumeric){If(Open>=preEntryPrice+TrailingScale*N)//如果開盤就超過設定的1/2N,則直接用開盤價增倉。{myEntryPrice=Open;preEntryPrice=myEntryPrice;Buy(Lots,myEntryPrice);SendOrderThisBar=True;}while(High>=preEntryPrice+TrailingScale*N)//以最高價為標準,判斷能進行幾次增倉{myEntryPrice=preEntryPrice+TrailingScale*N;preEntryPrice=myEntryPrice;Buy(Lots,myEntryPrice);SendOrderThisBar=True;}}//止損策略//If(Low<=preEntryPrice-StopLossSet*N&&SendOrderThisBar==false)//加倉Bar不止損{myExitPrice=preEntryPrice-StopLossSet*N;myExitPrice=IIF(myExitPrice>Open,Open,myExitPrice);//大跳空的時候用開盤價代替Sell(0,myExitPrice);//數(shù)量用0的情況下將全部平倉}}}ElseIf(MarketPosition==-1)//有空倉的情況{Commentary("ExitHighestPrice="+Text(ExitHighestPrice));If(High>ExitHighestPrice){myExitPrice=Min(High,ExitHighestPrice);myExitPrice=IIF(myExitPrice<Open,Open,myExitPrice);//大跳空的時候用開盤價代替BuyToCover(0,myExitPrice);//數(shù)量用0的情況下將全部平倉}Else{If(preEntryPrice!=InvalidNumeric){If(Open<=preEntryPrice-TrailingScale*N)//如果開盤就超過設定的1/2N,則直接用開盤價增倉。{myEntryPrice=Open;preEntryPrice=myEntryPrice;SellShort(Lots,myEntryPrice);SendOrderThisBar=True;}while(Low<=preEntryPrice-TrailingScale*N)//以最低價為標準,判斷能進行幾次增倉{myEntr

溫馨提示

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

評論

0/150

提交評論