幽靈交易者系統(tǒng)(TB版)_第1頁(yè)
幽靈交易者系統(tǒng)(TB版)_第2頁(yè)
幽靈交易者系統(tǒng)(TB版)_第3頁(yè)
幽靈交易者系統(tǒng)(TB版)_第4頁(yè)
幽靈交易者系統(tǒng)(TB版)_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

幽靈交易者系統(tǒng)(TB版)一、系統(tǒng)概述幽靈交易者系統(tǒng)是一個(gè)基于TB平臺(tái)的交易策略系統(tǒng),主要通過指數(shù)平均線、RSI指標(biāo)和唐奇安通道等技術(shù)分析工具進(jìn)行交易決策。系統(tǒng)分為做多信號(hào)和做空信號(hào)兩部分,各自包含明確的入場(chǎng)和出場(chǎng)條件。二、系統(tǒng)要素兩條指數(shù)平均線:短期指數(shù)平均線(FastLength,默認(rèn)值9)長(zhǎng)期指數(shù)平均線(SlowLength,默認(rèn)值19)RSI指標(biāo):計(jì)算RSI所用的周期(Length,默認(rèn)值9)超賣閾值(OverSold,默認(rèn)值30)超買閾值(OverBought,默認(rèn)值70)唐奇安通道:上軌(ExitHiBand,通過Highest函數(shù)計(jì)算最近20個(gè)最高價(jià))下軌(ExitLoBand,通過Lowest函數(shù)計(jì)算最近20個(gè)最低價(jià))三、入場(chǎng)條件做多信號(hào):模擬交易產(chǎn)生一次虧損短期均線在長(zhǎng)期均線之上RSI低于超買值創(chuàng)新高做空信號(hào):模擬交易產(chǎn)生一次虧損(根據(jù)邏輯推斷,做空也應(yīng)遵循此條件)短期均線在長(zhǎng)期均線之下RSI高于超賣值創(chuàng)新低四、出場(chǎng)條件持有多單時(shí):價(jià)格小于唐奇安通道下軌,則平多單持有空單時(shí):價(jià)格大于唐奇安通道上軌,則平空單五、代碼解讀參數(shù)定義:系統(tǒng)通過Params部分定義了多個(gè)數(shù)值型參數(shù),包括指數(shù)平均線的周期、RSI計(jì)算周期、超買超賣閾值以及交易手?jǐn)?shù)等。變量定義:Vars部分定義了多個(gè)數(shù)值序列變量和數(shù)值變量,用于存儲(chǔ)計(jì)算過程中的中間值和最終結(jié)果,如指數(shù)平均線值、RSI值、唐奇安通道上下軌、進(jìn)場(chǎng)價(jià)格、出場(chǎng)價(jià)格、利潤(rùn)以及多空狀態(tài)等。計(jì)算邏輯:首先,系統(tǒng)通過Xaverage函數(shù)計(jì)算短期和長(zhǎng)期指數(shù)平均線。接著,根據(jù)當(dāng)前K線的位置計(jì)算RSI相關(guān)指標(biāo)(NetChgAvg和TotChgAvg),進(jìn)而得到RSI值。然后,通過Highest和Lowest函數(shù)計(jì)算唐奇安通道的上軌和下軌。最后,根據(jù)多空狀態(tài)和價(jià)格條件執(zhí)行入場(chǎng)或出場(chǎng)操作。交易執(zhí)行:在滿足入場(chǎng)條件時(shí),系統(tǒng)會(huì)根據(jù)利潤(rùn)狀態(tài)決定是否開倉(cāng)。在滿足出場(chǎng)條件時(shí),系統(tǒng)執(zhí)行平倉(cāng)操作,并計(jì)算利潤(rùn)。六、策略說明系統(tǒng)采用了一種模擬交易產(chǎn)生一次虧損后才啟動(dòng)真實(shí)下單交易的策略,旨在通過模擬交易測(cè)試市場(chǎng)條件,提高真實(shí)交易的準(zhǔn)確性和盈利能力。同時(shí),系統(tǒng)結(jié)合了多種技術(shù)分析工具,形成了較為完整的交易決策體系。做多信號(hào)代碼:ParamsNumericFastLength(9);NumericSlowLength(19);NumericLength(9);NumericOverSold(30);NumericOverBought(70);NumericLots(0);VarsNumericSeriesAvgValue1;NumericSeriesAvgValue2;NumericSeriesNetChgAvg(0);NumericSeriesTotChgAvg(0);NumericSF(0);NumericChange(0);NumericChgRatio(0);NumericSeriesRSIValue;NumericSeriesExitHiBand(0);NumericSeriesExitLoBand(0);NumericSeriesmyEntryPrice(0);NumericSeriesmyExitPrice(0);NumericSeriesmyProfit(0);NumericSeriesmyPosition(0);BeginIf(!CallAuctionFilter())Return;AvgValue1=Xaverage(Close,FastLength);AvgValue2=Xaverage(Close,SlowLength);//計(jì)算RSIIf(CurrentBar<=Length-1){NetChgAvg=(Close-Close[Length])/Length;TotChgAvg=Average(Abs(Close-Close[1]),Length);}Else{SF=1/Length;Change=Close-Close[1];NetChgAvg=NetChgAvg[1]+SF*(Change-NetChgAvg[1]);TotChgAvg=TotChgAvg[1]+SF*(Abs(Change)-TotChgAvg[1]);}If(TotChgAvg<>0){ChgRatio=NetChgAvg/TotChgAvg;}Else{ChgRatio=0;}RSIValue=50*(ChgRatio+1);ExitHiBand=Highest(High,20);ExitLoBand=Lowest(Low,20);If(myPosition==1AndmyPosition[1]==1andLow<=ExitLoBand[1]){myExitPrice=Min(Open,ExitLoBand[1]);Sell(0,myExitPrice);myProfit=myExitPrice-MyEntryPrice;myPosition=0;}If(myPosition==0AndmyPosition[1]==0AndAvgValue1[1]>AvgValue2[1]AndRSIValue[1]<OverBoughtandHigh>=High[1]){myEntryPrice=Max(Open,High[1]);myPosition=1;If(myProfit<0)Buy(Lots,myEntryPrice);}End策略說明:模擬交易產(chǎn)生一次虧損后才啟動(dòng)真實(shí)下單交易。系統(tǒng)要素:1、兩條指數(shù)平均線2、RSI指標(biāo)3、唐奇安通道入場(chǎng)條件:1、模擬交易產(chǎn)生一次虧損、短期均線在長(zhǎng)期均線之上、RSI低于超買值、創(chuàng)新高,則開多單2、模擬交易產(chǎn)生一次虧損、短期均線在長(zhǎng)期均線之下、RSI高于超賣值、創(chuàng)新低,則開空單出場(chǎng)條件:1、持有多單時(shí)小于唐奇安通道下軌,平多單2、持有空單時(shí)大于唐奇安通道上軌,平空單做多代碼解讀:ParamsNumericFastLength(9);//聲明數(shù)值參數(shù)FastLength,初值9,即短期指數(shù)平均線參數(shù)。NumericSlowLength(19);//聲明數(shù)值參數(shù)SlowLength,初值19,即長(zhǎng)期指數(shù)平均線參數(shù)。NumericLength(9);//聲明數(shù)值參數(shù)Length,初值9,即RSI參數(shù)。NumericOverSold(30);//聲明數(shù)值參數(shù)OverSold,初值30,即超賣。NumericOverBought(70);//聲明數(shù)值參數(shù)OverBought,初值70,即超買。NumericLots(0);//聲明數(shù)值參數(shù)Lots,初值0,即交易手?jǐn)?shù)設(shè)置。VarsNumericSeriesAvgValue1;//聲明數(shù)值序列變量AvgValue1,即短期指數(shù)平均線。NumericSeriesAvgValue2;//聲明數(shù)值序列變量AvgValue2,即長(zhǎng)期指數(shù)平均線。NumericSeriesNetChgAvg(0);//聲明數(shù)值序列變量NetChgAvg,初值0。NumericSeriesTotChgAvg(0);//聲明數(shù)值序列變量TotChgAvg,初值0.NumericSF(0);//聲明數(shù)值變量SF,初值0.NumericChange(0);//聲明數(shù)值變量Change,初值0.NumericChgRatio(0);//聲明數(shù)值變量ChgRatio,初值0.NumericSeriesRSIValue;//聲明數(shù)值序列變量RSIValue,即RSI指標(biāo)。NumericSeriesExitHiBand(0);//聲明數(shù)值序列變量ExitHiBand,初值0,唐奇安通道上軌。NumericSeriesExitLoBand(0);//聲明數(shù)值序列變量ExitLoBand,初值0,唐奇安通道下軌。NumericSeriesmyEntryPrice(0);//聲明數(shù)值序列變量myEntryPrice,初值0,進(jìn)場(chǎng)價(jià)格。NumericSeriesmyExitPrice(0);//聲明數(shù)值序列變量myExitPrice,初值0,出場(chǎng)價(jià)格。NumericSeriesmyProfit(0);//聲明數(shù)值序列變量myProfit,初值0,即利潤(rùn)。NumericSeriesmyPosition(0);//聲明數(shù)值序列變量myPosition,初值0,即多空標(biāo)志。BeginIf(!CallAuctionFilter())Return;//集合競(jìng)價(jià)和小節(jié)休息過濾。AvgValue1=Xaverage(Close,FastLength);//計(jì)算短期指數(shù)平均線,即把收盤價(jià)與周期9返回函數(shù)Xaverage求值。AvgValue2=Xaverage(Close,SlowLength);//同理,計(jì)算長(zhǎng)期指數(shù)平均線參數(shù)。//計(jì)算RSI。If(CurrentBar<=Length-1)//假如當(dāng)前索引k線數(shù)位值小于等于周期8。{NetChgAvg=(Close-Close[Length])/Length;//代入相應(yīng)數(shù)值計(jì)算,即得NetChgAvg=(close-close[9])/9TotChgAvg=Average(Abs(Close-Close[1]),Length);//先算絕對(duì)值函數(shù)Abs里的,再把絕對(duì)值與周期9返回均值函數(shù)Average求均值,最后賦值給變量TotChgAvg。}Else//就是k線數(shù)位值大于周期8。{SF=1/Length;//代入相應(yīng)數(shù)值,即SF=1/9。Change=Close-Close[1];//同理,代入當(dāng)期k線收盤價(jià)與前一k線收盤價(jià)即可。NetChgAvg=NetChgAvg[1]+SF*(Change-NetChgAvg[1]);//代入上邊求得的相應(yīng)數(shù)值TotChgAvg=TotChgAvg[1]+SF*(Abs(Change)-TotChgAvg[1]);//同上解讀。}If(TotChgAvg<>0)//假如變量TotChgAvg不等于0{ChgRatio=NetChgAvg/TotChgAvg;//則兩變量相除}Else//等于0{ChgRatio=0;//變量ChgRatio=0}RSIValue=50*(ChgRatio+1);//指標(biāo)RSI的計(jì)算結(jié)果ExitHiBand=Highest(High,20);//唐奇安通道上軌。ExitLoBand=Lowest(Low,20);//唐奇安通道下軌。If(myPosition==1AndmyPosition[1]==1andLow<=ExitLoBand[1])//持有多單時(shí),下破唐奇安通道下軌,平多單。{myExitPrice=Min(Open,ExitLoBand[1]);//出場(chǎng)價(jià)的計(jì)算,開盤價(jià)與前一個(gè)唐奇安通道下軌的比較,取較小值。Sell(0,myExitPrice);//平倉(cāng)。myProfit=myExitPrice-MyEntryPrice;//利潤(rùn)算法。myPosition=0;//持倉(cāng)多空標(biāo)志myPosition=0.}If(myPosition==0AndmyPosition[1]==0AndAvgValue1[1]>AvgValue2[1]AndRSIValue[1]<OverBoughtandHigh>=High[1])//模擬交易產(chǎn)生一次虧損、短期均線在長(zhǎng)期均線之上、RSI低于超買值、創(chuàng)新高,則開多單。{myEntryPrice=Max(Open,High[1]);//進(jìn)場(chǎng)價(jià)計(jì)算,即開盤價(jià)與前一個(gè)最高價(jià)的比較,取較大值。myPosition=1;//持倉(cāng)多空標(biāo)志myPosition=1.If(myProfit<0)Buy(Lots,myEntryPrice);//假如利潤(rùn)myProfit<0的,以進(jìn)場(chǎng)價(jià)開倉(cāng)。}End做空信號(hào)代碼:ParamsNumericFastLength(9);NumericSlowLength(19);NumericLength(9);NumericOverSold(30);NumericOverBought(70);NumericLots(0);VarsNumericSeriesAvgValue1;NumericSeriesAvgValue2;NumericSeriesNetChgAvg(0);NumericSeriesTotChgAvg(0);NumericSF(0);NumericChange(0);NumericChgRatio(0);NumericSeriesRSIValue;NumericSeriesExitHiBand(0);NumericSeriesExitLoBand(0);NumericSeriesmyEntryPrice(0);NumericSeriesmyExitPrice(0);NumericSeriesmyProfit(0);NumericSeriesmyPosition(0);BeginIf(!CallAuctionFilter())Return;AvgValue1=Xaverage(Close,FastLength);AvgValue2=Xaverage(Close,SlowLength);If(CurrentBar<=Length-1){NetChgAvg=(Close-Close[Length])/Length;TotChgAvg=Average(Abs(Close-Close[1]),Length);}Else{SF=1/Length;Change=Close-Close[1];NetChgAvg=NetChgAvg[1]+SF*(Change-NetChgAvg[1]);TotChgAvg=TotChgAvg[1]+SF*(Abs(Change)-TotChgAvg[1]);}If(TotChgAvg<>0){ChgRatio=NetChgAvg/TotChgAvg;}Else{ChgRatio=0;}RSIValue=50*(ChgRatio+1);ExitHiBand=Highest(High,20);ExitLoBand=Lowest(Low,20);If(myPosition==-1AndmyPosition[1]==-1andHigh>=ExitHiBand[1]){myExitPrice=Max(Open,ExitHiBand[1]);BuyToCover(0,myExitPrice);myProfit=myEntryPrice-MyExitPrice;myPosition=0;}If(myPosition==0AndmyPosition[1]==0AndAvgValue1[1]<AvgValue2[1]AndRSIValue[1]>OverSoldandLow<=Low[1]){myEntryPrice=Min(Open,Low[1]);myPosition=-1;If(myProfit<0)SellShort(Lots,myEntryPrice);}End做空代碼注解:#參數(shù)定義部分Params#定義數(shù)值型參數(shù)FastLength,初始值為9,用于短期指數(shù)平均線的計(jì)算NumericFastLength(9);#定義數(shù)值型參數(shù)SlowLength,初始值為19,用于長(zhǎng)期指數(shù)平均線的計(jì)算NumericSlowLength(19);#定義數(shù)值型參數(shù)Length,初始值為9與RSI指標(biāo)計(jì)算相關(guān)NumericLength(9);#定義數(shù)值型參數(shù)OverSold,初始值為30,超賣閾值NumericOverSold(30);#定義數(shù)值型參數(shù)OverBought,初始值為70,超買閾值NumericOverBought(70);#定義數(shù)值型參數(shù)Lots,初始值為0,用于設(shè)置交易手?jǐn)?shù)NumericLots(0);#變量定義部分Vars#定義數(shù)值序列變量AvgValue1,用于存儲(chǔ)短期指數(shù)平均線的值NumericSeriesAvgValue1;#定義數(shù)值序列變量AvgValue2,用于存儲(chǔ)長(zhǎng)期指數(shù)平均線的值NumericSeriesAvgValue2;#定義數(shù)值序列變量NetChgAvg,初始值為0NumericSeriesNetChgAvg(0);#定義數(shù)值序列變量TotChgAvg,初始值為0NumericSeriesTotChgAvg(0);#定義數(shù)值變量SF,初始值為0NumericSF(0);#定義數(shù)值變量Change,初始值為0NumericChange(0);#定義數(shù)值變量ChgRatio,初始值為0NumericChgRatio(0);#定義數(shù)值序列變量RSIValue,用于存儲(chǔ)RSI指標(biāo)的值NumericSeriesRSIValue;#定義數(shù)值序列變量ExitHiBand,初始值為0,唐奇安通道上軌NumericSeriesExitHiBand(0);#定義數(shù)值序列變量ExitLoBand,初始值為0,唐奇安通道下軌NumericSeriesExitLoBand(0);#定義數(shù)值序列變量myEntryPrice,初始值為0,進(jìn)場(chǎng)價(jià)格NumericSeriesmyEntryPrice(0);#定義數(shù)值序列變量myExitPrice,初始值為0,出場(chǎng)價(jià)格NumericSeriesmyExitPrice(0);#定義數(shù)值序列變量myProfit,初始值為0,是利潤(rùn)NumericSeriesmyProfit(0);#定義數(shù)值序列變量myPosition,初始值為0,表示多空狀態(tài)NumericSeriesmyPosition(0);Begin#如果處于集合競(jìng)價(jià)或小節(jié)休息階段,直接返回If(!CallAuctionFilter())Return;#計(jì)算短期指數(shù)平均線并賦值給AvgValue1AvgValue1=Xaverage(Close,FastLength);#計(jì)算長(zhǎng)期指數(shù)平均線并賦值給AvgValue2AvgValue2=Xaverage(Close,SlowLength);#根據(jù)當(dāng)前K線的位置計(jì)算RSI相關(guān)指標(biāo)If(CurrentBar<=Length-1){#計(jì)算NetChgAvgNetChgAvg=(Close-Close[Length])/Length;#計(jì)算TotChgAvgTotChgAvg=Average(Abs(Close-Close[1]),Length);}Else{#計(jì)算SFSF=1/Length;#計(jì)算ChangeChange=Close-Close[1];#計(jì)算NetChgAvgNetChgAvg=NetChgAvg[1]+SF*(Change-NetChgAvg[1]);#計(jì)算TotChgAvgTotChgAvg=TotChgAvg[1]

溫馨提示

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

評(píng)論

0/150

提交評(píng)論