




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
WR威廉指標策略(TB版)策略概述WR威廉指標策略是一種基于技術(shù)分析的交易策略,通過結(jié)合威廉指標(WR)和相對強弱指數(shù)(RSI)來判斷市場的買賣點。該策略還包括了跟蹤止損和固定止損的設(shè)置,以提高交易的風(fēng)險管理效率。策略參數(shù)Length1:用于計算威廉指標的周期數(shù),默認值為10。Length:用于計算RSI指標的周期數(shù),默認值為14。TrailingStart1:第一級跟蹤止盈啟動設(shè)置,默認值為50。TrailingStart2:第二級跟蹤止盈啟動設(shè)置,默認值為80。TrailingStop1:第一級跟蹤止盈設(shè)置,默認值為30。TrailingStop2:第二級跟蹤止盈設(shè)置,默認值為20。StopLossSet:固定止損點數(shù),默認值為30。指標計算威廉指標(WR):公式:PRValue=100-((HH-Close)/Divisor)*100其中,HH為過去Length1天內(nèi)的最高價,Divisor為HH與過去Length1天內(nèi)的最低價之差,Close為當日收盤價。相對強弱指數(shù)(RSI):通過計算價格變動的平均收益與平均損失的比率來評估市場的強弱。買賣規(guī)則買入條件:當威廉指標(前一日值)大于等于50且RSI指標(前一日值)也大于等于50時,買入。賣出條件:當威廉指標(前一日值)小于等于50且RSI指標(前一日值)也小于等于50時,賣出(或做空)。止損與止盈固定止損:根據(jù)設(shè)定的StopLossSet值,在達到設(shè)定的止損點時進行平倉。跟蹤止損:第一級:當價格從買入點上漲(或下跌)超過TrailingStart1MinPoint時,若價格回落超過TrailingStop1MinPoint,則觸發(fā)平倉。第二級:當價格從買入點上漲(或下跌)超過TrailingStart2MinPoint時,若價格回落超過TrailingStop2MinPoint,則觸發(fā)平倉。策略流程計算威廉指標和RSI指標。判斷當前市場狀況是否符合買入或賣出條件。若符合條件,則執(zhí)行買入或賣出操作。監(jiān)控價格走勢,根據(jù)止損和止盈規(guī)則進行平倉操作。附加說明策略中還包括了對集合競價和小節(jié)休息的過濾,以確保交易信號的準確性。策略通過記錄開倉后的最高價和最低價,用于后續(xù)的跟蹤止損判斷。提供了詳細的變量聲明和邏輯判斷,以確保策略的可靠性和執(zhí)行效率。策略信號代碼:ParamsNumericLength1(10);NumericLength(14);NumericTrailingStart1(50);NumericTrailingStart2(80);NumericTrailingStop1(30);NumericTrailingStop2(20);NumericStopLossSet(30);VarsNumericHH;NumericDivisor;NumericSeriesPRValue;NumericSeriesNetChgAvg(0);NumericSeriesTotChgAvg(0);NumericSF(0);NumericChange(0);NumericChgRatio(0);NumericSeriesRSIValue;NumericSeriesHighestAfterEntry;NumericSeriesLowestAfterEntry;NumericMinPoint;NumericMyEntryPrice;Numericmyprice;Numericmyexitprice;BeginHH=Highest(High,Length1);Divisor=HH-Lowest(Low,Length1);If(Divisor<>0)PRValue=100-((HH-Close)/Divisor)*100;elsePRValue=Divisor;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;elseChgRatio=0;RSIValue=50*(ChgRatio+1);If(!CallAuctionFilter())Return;If(MarketPosition<>1&&PRValue[1]>=50AndRSIValue[1]>=50)Buy(1,Open);If(MarketPosition<>-1&&PRValue[1]<=50AndRSIValue[1]<=50)SellShort(1,Open);If(BarsSinceEntry==0){HighestAfterEntry=Close;LowestAfterEntry=Close;If(MarketPosition<>0){HighestAfterEntry=Max(HighestAfterEntry,AvgEntryPrice);LowestAfterEntry=Min(LowestAfterEntry,AvgEntryPrice);}}else{HighestAfterEntry=Max(HighestAfterEntry,High);LowestAfterEntry=Min(LowestAfterEntry,Low);}MinPoint=MinMove*PriceScale;MyEntryPrice=AvgEntryPrice;If(MarketPosition==1){If(HighestAfterEntry[1]>=MyEntryPrice+TrailingStart2*MinPoint){If(Low<=HighestAfterEntry[1]-TrailingStop2*MinPoint)MyExitPrice=HighestAfterEntry[1]-TrailingStop2*MinPoint;Sell(0,MyExitPrice);}elseif(HighestAfterEntry[1]>=MyEntryPrice+TrailingStart1*MinPoint){If(Low<=HighestAfterEntry[1]-TrailingStop1*MinPoint){MyExitPrice=HighestAfterEntry[1]-TrailingStop1*MinPoint;Sell(0,MyExitPrice);}}elseif(Low<=MyEntryPrice-StopLossSet*MinPoint){MyExitPrice=MyEntryPrice-StopLossSet*MinPoint;Sell(0,MyExitPrice);}}elseif(MarketPosition==-1){If(LowestAfterEntry[1]<=MyEntryPrice-TrailingStart2*MinPoint){If(High>=LowestAfterEntry[1]+TrailingStop2*MinPoint){MyExitPrice=LowestAfterEntry[1]+TrailingStop2*MinPoint;BuyToCover(0,MyExitPrice);}}elseif(LowestAfterEntry[1]<=MyEntryPrice-TrailingStart1*MinPoint){If(High>=LowestAfterEntry[1]+TrailingStop1*MinPoint){MyExitPrice=LowestAfterEntry[1]+TrailingStop1*MinPoint;BuyToCover(0,MyExitPrice);}}elseIf(High>=MyEntryPrice+StopLossSet*MinPoint){MyExitPrice=MyEntryPrice+StopLossSet*MinPoint;BuyToCover(0,MyExitPrice);}}End第一個求最高函數(shù)Highest,代碼如下:ParamsNumericSeriesPrice(0);//聲明序列參數(shù)Price,賦值0.NumericLength(5);//聲明參數(shù)Length,賦值5。VarsNumericHighestValue;//聲明變量HighestValue.Numerici;//聲明變量i。BeginHighestValue=Price;//變量HighestValue的值等于價格。fori=1toLength-1//循環(huán)語句,變量i的值從1循環(huán)到參數(shù)Length-1,循環(huán)執(zhí)行花括號里的語句程序。{If(Price[i]>HighestValue)//假如Price[i]大于變量HighestValue,其實這當前價格是一個中間值,作用是為了求前1,2,3,4數(shù)位的價格哪個最大。HighestValue=Price[i];//可以看到,假如Price[1]的值大于當前價,那么就把Price[1]的值賦予給HighestValue,再把Price[1]跟Price[2]對比,循環(huán)到Price[4]為止。}ReturnHighestValue;//根據(jù)對比的這5根k線的價格,把最大值返回給主函數(shù)。End第二個求最低函數(shù)Lowest,代碼如下:ParamsNumericSeriesPrice(0);NumericLength(5);VarsNumericLowestValue;Numerici;BeginLowestValue=Price;fori=1toLength-1{If(Price[i]<LowestValue)LowestValue=Price[i];}ReturnLowestValue;End第三個求威廉指標函數(shù)PercentR。算法:N日內(nèi)最高價與當日收盤價的差,除以N日內(nèi)最高價與最低價的差,結(jié)果放大100倍。代碼如下:ParamsNumericLength(10);//聲明參數(shù)Length,賦值為10,VarsNumericHH;//聲明變量名為HH。NumericDivisor;//聲明變量名為Divisor。NumericPRValue;//聲明變量名為PRValue。BeginHH=Highest(High,Length);//變量HH值等于,調(diào)用函數(shù)Highest,求出10周期內(nèi)的最高價。Divisor=HH-Lowest(Low,Length);//變量Divisor值等于,10周期內(nèi)的最高價減去最低價。If(Divisor<>0)//假如變量Divisor不等于0.PRValue=100-((HH-Close)/Divisor)*100;//變量PRValue值=100-((10周期內(nèi)最高價-當前收盤價)/變量Divisor值)*100else//假如變量Divisor等于0.PRValue=Divisor;//變量PRValue等于0ReturnPRValue;//把變量PRValue的值返回給主函數(shù)End顯示在k線圖里的威廉指標代碼如下:ParamsNumericLength(5);//聲明參數(shù)Length,賦值5.NumericOverSold(20);//聲明參數(shù)OverSold,賦值20.NumericOverBought(80);聲明參數(shù)OverBought,賦值80.VarsNumericWRValue;//聲明變量WRValue。BeginWRValue=PercentR(Length);//變量WRValue值,就是把參數(shù)5帶回函數(shù)PercentR里重新求一遍,再把得到的值返回來給WRValue。PlotNumeric("WR",WRValue);//畫線WR,替代WRValue。PlotNumeric("超買",OverBought);//畫線超買,就是初值80.PlotNumeric("超賣",OverSold);//畫線超賣,就是初值20.End策略買賣規(guī)則:跟RSI指標共振。即同步穿過50中間值,買入;同步跌破50中間值,賣出。固定止損30,止盈分50與80兩級。策略代碼解釋如下:ParamsNumericLength1(10);NumericLength(14);NumericTrailingStart1(50);//跟蹤止盈啟動設(shè)置1NumericTrailingStart2(80);//跟蹤止盈啟動設(shè)置2NumericTrailingStop1(30);//跟蹤止盈設(shè)置1NumericTrailingStop2(20);//跟蹤止盈設(shè)置2NumericStopLossSet(30);//固定止損30個點VarsNumericHH;NumericDivisor;NumericSeriesPRValue;NumericSeriesNetChgAvg(0);NumericSeriesTotChgAvg(0);NumericSF(0);NumericChange(0);NumericChgRatio(0);NumericSeriesRSIValue;NumericSeriesHighestAfterEntry;NumericSeriesLowestAfterEntry;NumericMinPoint;NumericMyEntryPrice;Numericmyprice;Numericmyexitprice;Begin//計算WR指標HH=Highest(High,Length1);Divisor=HH-Lowest(Low,Length1);If(Divisor<>0)PRValue=100-((HH-Close)/Divisor)*100;elsePRValue=Divisor;//計算RSI指標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);If(!CallAuctionFilter())Return;//集合競價和小節(jié)休息過濾If(MarketPosition<>1&&PRValue[1]>=50AndRSIValue[1]>=50){Buy(1,Open);}If(MarketPosition<>-1&&PRValue[1]<=50AndRSIValue[1]<=50){SellShort(1,Open);}If(BarsSinceentry==0){HighestAfterEntry=Close;LowestAfterEntry=Close;If(MarketPosition<>0){HighestAfterEntry=Max(HighestAfterEntry,AvgEntryPrice);//開倉的Bar,將開倉價和當時的收盤價的較大值保留到HighestAfterEntryLowestAfterEntry=Min(LowestAfterEntry,AvgEntryPrice);//開倉的Bar,將開倉價和當時的收盤價的較小值保留到LowestAfterEntry}}else{HighestAfterEntry=Max(HighestAfterEntry,High);//記錄下當前Bar的最高點,用于下一個Bar的跟蹤止損判斷LowestAfterEntry=Min(LowestAfterEntry,Low);//記錄下當前Bar的最低點,用于下一個Bar的跟蹤止損判斷}Commentary("HighestAfterEntry="+Text(HighestAfterEntry));Commentary("LowestAfterEntry="+Text(LowestAfterEntry));Commentary("MyEntryPrice="+Text(MyEntryPrice));MinPoint=MinMove*PriceScale;MyEntryPrice=AvgEntryPrice;If(MarketPosition==1)//有多倉的情況{If(HighestAfterEntry[1]>=MyEntryPrice+TrailingStart2*MinPoint)//第二級跟蹤止損的條件表達式{If(Low<=HighestAfterEntry[1]-TrailingStop2*MinPoint){MyExitPrice=HighestAfterEntry[1]-TrailingStop2*MinPoint;Sell(0,MyExitPrice);}}elseif(HighestAfterEntry[1]>=MyEntryPrice+TrailingStart1*MinPoint)//第一級跟蹤止損的條件表達式{If(Low<=High
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 調(diào)料市場投資協(xié)議
- 文化節(jié)慶合作協(xié)議
- 室內(nèi)裝飾色彩選擇協(xié)議
- 絹紡和絲織的綠色組織與管理考核試卷
- 聚苯并噻吩共聚物纖維單體制備考核試卷
- 企業(yè)客戶關(guān)系管理與維護考核試卷
- 稀有金屬加工質(zhì)量改進項目評估與驗收標準制定考核試卷
- 中學(xué)生交通安全教育
- 文明禮儀伴我行-中學(xué)生行為養(yǎng)成教育主題班會
- 護患溝通技巧課件
- 2025-2030中國干燥劑行業(yè)發(fā)展分析及發(fā)展前景與投資研究報告
- 環(huán)保安全知識課件
- 比例尺單元測試卷及答案
- 氬弧焊基本知識課件
- 《廣西壯族自治區(qū)基層工會經(jīng)費收支管理實施辦法》修訂解讀
- 中職語文教學(xué)大賽教學(xué)實施報告范文與解析
- 山東臨沂市羅莊區(qū)興羅投資控股有限公司招聘筆試題庫2025
- 北京市朝陽區(qū)2025屆高三下學(xué)期一模試題 數(shù)學(xué) 含答案
- 食品工廠5S管理
- 大數(shù)據(jù)在展覽中的應(yīng)用-全面剖析
- 食品企業(yè)危機應(yīng)對措施
評論
0/150
提交評論