布林通道策略(TB版)_第1頁
布林通道策略(TB版)_第2頁
布林通道策略(TB版)_第3頁
布林通道策略(TB版)_第4頁
布林通道策略(TB版)_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

布林通道策略(TB版)一種基于技術分析的交易策略,主要利用布林通道來識別市場趨勢和潛在的進出點。該策略的核心思想是通過布林通道的中軌、上軌和下軌來判斷市場的波動性和趨勢強度。首先,布林通道策略通過計算布林通道的中軌、上軌和下軌來確定市場的波動范圍。中軌通常是移動平均線,反映了市場的中心趨勢。上軌和下軌則是根據中軌和標準差計算得出,用于標識市場的波動范圍。當價格突破上軌或下軌時,通常被視為市場趨勢的延續或反轉信號。其次,策略引入了一個動量振蕩器作為進場過濾器。動量振蕩器通過比較當前收盤價與一段時間前的收盤價來衡量價格的動量變化。如果動量振蕩器顯示價格具有上升或下降的動量,并且價格突破了布林通道的上軌或下軌,策略將發出買入或賣出的信號。這種結合動量和通道突破的方法可以減少假突破的可能性,提高交易的準確性。此外,策略還采用了自適應出場均線來優化出場條件。自適應出場均線根據當前持倉的時間動態調整,以確保在價格波動較大時能夠及時出場,而在價格波動較小時能夠保持持倉以獲取更多利潤。這種自適應方法有助于平衡風險和收益。布林通道策略的特點在于其靈活性和適應性。通過結合布林通道、動量振蕩器和自適應出場均線,策略能夠在不同的市場環境中表現出色。它適用于多種資產類別,包括股票、外匯和商品等。此外,策略的設計考慮了風險管理,通過合理的出場條件來控制潛在的損失。總體而言,布林通道策略是一種結合了趨勢識別、動量分析和自適應調整的技術交易策略。它通過綜合運用多種技術工具來捕捉市場機會,同時注重風險管理,以實現穩定和可持續的交易結果。在實際應用中,交易者可以根據自己的風險偏好和市場條件對策略進行進一步的優化和調整。買賣規則如下:策略說明:基于布林通道的突破系統系統要素:1、基于收盤價計算而來的布林通道2、基于收盤價計算而來的進場過濾器3、自適應出場均線入場條件:1、滿足過濾條件,并且價格上破布林通道上軌,開多單2、滿足過濾條件,并且價格下破布林通道下軌,開空單出場條件:1、持有多單時,自適應出場均線低于布林通道上軌,并且價格下破自適應出場均線,平多單2、持有空單時,自適應出場均線高于布林通道下軌,并且價格上破自適應出場均線,平空單做多代碼信號:ParamsNumericbollingerLengths(50);//布林通道參數NumericOffset(1.25);//布林通道固定系數NumericrocCalcLength(30);//過濾器參數NumericliqLength(50);//自適應出場均線參數NumericLots(0);//交易手數VarsNumericSeriesMidLine(0);//布林通道中軌NumericBand(0);//通道距離NumericSeriesupBand(0);//布林通道上軌NumericSeriesrocCalc(0);//過濾器NumericSeriesliqDays(50);//自適應出場均線參數NumericSeriesliqPoint(0);//自適應出場均線BeginIf(!CallAuctionFilter())Return;MidLine=AverageFC(Close,bollingerLengths);Band=StandardDev(Close,bollingerLengths,2);upBand=MidLine+Offset*Band;PlotNumeric("MidLine",MidLine);PlotNumeric("upBand",upBand);rocCalc=Close-Close[rocCalcLength-1];If(MarketPosition!=1AndrocCalc[1]>0AndHigh>=upBand[1])Buy(Lots,Max(Open,upBand[1]));If(MarketPosition==0)liqDays=liqLength;Else{liqDays=liqDays-1;liqDays=Max(liqDays,10);}liqPoint=Average(Close,liqDays);PlotNumeric("liqPoint",liqPoint);If(MarketPosition==1AndBarsSinceEntry>=1AndliqPoint[1]<upBand[1]AndLow<=liqPoint[1])Sell(0,Min(Open,liqPoint[1]));End做多代碼解釋:ParamsNumericbollingerLengths(50);//聲明參數bollingerLengths,初始值為50,即為布林通道參數。//NumericOffset(1.25);//聲明參數Offset,初始值為1.25,即布林通道固定系數。//NumericrocCalcLength(30);//聲明參數rocCalcLength,初值30,這是過濾器的參數。//NumericliqLength(50);//聲明參數liqLength,初值50,這是自適應出場均線參數。//NumericLots(0);//聲明參數Lots,即為交易手數。//VarsNumericSeriesMidLine(0);//聲明序列變量MidLine,初值為0,即為布林通道中軌。//NumericBand(0);//聲明變量Band,初值為0,即為通道距離。//NumericSeriesupBand(0);//聲明序列變量upBand,初值為0,即布林通道上軌。//NumericSeriesrocCalc(0);//聲明序列變量rocCalc,初值為0,即過濾器。//NumericSeriesliqDays(50);//聲明序列變量liqDay是,初值為50,即自適應出場均線的參數。//NumericSeriesliqPoint(0);//聲明序列變量liqPoint,初值為0,即為自適應的出場均線。//BeginIf(!CallAuctionFilter())Return;//集合競價和小節休息過濾。//MidLine=AverageFC(Close,bollingerLengths);//布林通道中軌,變量MidLine值等于求50周期收盤價的均值。//Band=StandardDev(Close,bollingerLengths,2);//這個函數StandardDev看著眼熟吧,在解讀布林帶時,詳細說明,這里不再次啰嗦了。變量Band值等于,求50周期收盤價的標準差。//upBand=MidLine+Offset*Band;//布林通道上軌upBand=中軌MidLine+固定系數50*距離Band值。//PlotNumeric("MidLine",MidLine);//畫線中軌MidLine。//PlotNumeric("upBand",upBand);//畫線上軌upBand。//rocCalc=Close-Close[rocCalcLength-1];//收盤價Close[rocCalcLength-1]數值代進去等于Close[30-1],則進場過濾器rocCalc=當前收盤價-前29根k線收盤價。//If(MarketPosition!=1AndrocCalc[1]>0AndHigh>=upBand[1])Buy(Lots,Max(Open,upBand[1]));//直白解讀了,假如當前沒有持倉,滿足過濾條件,并且價格突破布林通道上軌,開多單。//If(MarketPosition==0)//假如當前沒有持倉。這接下來寫的是自適應出場均線代碼。//{liqDays=liqLength;//把參數liqLength初值50,賦值給變量liqDays。//}Else//持倉的情況。//{liqDays=liqDays-1;//變量liqDays自減1后,再賦值給變量liqDays。//liqDays=Max(liqDays,10);//把變量liqDays自減1后所得的值與數量10比較,取最大值,再把所得值賦值給變量liqDays。其實不會看代碼的人可能看蒙了,我改一下,比如,a=liqDays-1,下一行為b=Max(a,10)。要這么寫,大家看明白了吧,但這得做多個聲明,麻煩,所以程序員用一個聲明變量也能代表這意思,所以很少有人這么寫的。//}liqPoint=Average(Close,liqDays);//序列變量liqPoint值等于求50周期收盤價均值了。//PlotNumeric("liqPoint",liqPoint);//畫線liqPoint即為自適應出場均線。//If(MarketPosition==1AndBarsSinceEntry>=1AndliqPoint[1]<upBand[1]AndLow<=liqPoint[1])Sell(0,Min(Open,liqPoint[1]));//持有多單時,自適應出場均線低于布林通道上軌,并且價格下破自適應出場均線,平多單。//End做空信號代瑪:ParamsNumericbollingerLengths(50);NumericOffset(1.25);NumericrocCalcLength(30);NumericliqLength(50);NumericLots(0);VarsNumericSeriesMidLine(0);NumericBand(0);NumericSeriesdnBand(0);NumericSeriesrocCalc(0);NumericSeriesliqDays(50);NumericSeriesliqPoint(0);BeginIf(!CallAuctionFilter())Return;MidLine=AverageFC(Close,bollingerLengths);Band=StandardDev(Close,bollingerLengths,2);dnBand=MidLine-Offset*Band;PlotNumeric("MidLine",MidLine);PlotNumeric("dnBand",dnBand);rocCalc=Close-Close[rocCalcLength-1];If(MarketPosition!=-1AndrocCalc[1]<0AndLow<=dnBand[1])SellShort(Lots,Min(Open,dnBand[1]));If(MarketPosition==0){liqDays=liqLength;}Else{liqDays=liqDays-1;liqDays=Max(liqDays,10);}liqPoint=Average(Close,liqDays);PlotNumeric("liqPoint",liqPoint);If(MarketPosition==-1AndBarsSinceEntry>=1AndliqPoint[1]>dnBand[1]AndHigh>=liqPoint[1])BuyToCover(0,Max(Open,liqPoint[1]));End做空代碼注解://定義策略參數NumericbollingerLengths(50);//布林通道周期,初始值為50NumericOffset(1.25);//布林通道偏移量,初始值為1.25NumericrocCalcLength(30);//動量振蕩器計算周期,初始值為30NumericliqLength(50);//清算周期,初始值為50NumericLots(0);//交易手數,初始值為0,表示使用默認手數//聲明變量VarsNumericSeriesMidLine(0);//布林通道中軌NumericBand(0);//布林通道帶寬NumericSeriesdnBand(0);//布林通道下軌NumericSeriesrocCalc(0);//動量振蕩器NumericSeriesliqDays(50);//清算日計數NumericSeriesliqPoint(0);//清算點,用于出場//策略開始執行Begin//如果沒有通過拍賣過濾器,則退出策略If(!CallAuctionFilter())Return;//計算布林通道中軌MidLine=AverageFC(Close,bollingerLengths);//計算布林通道帶寬,使用收盤價的標準差Band=StandardDev(Close,bollingerLengths,2);//計算布林通道下軌dnBand=MidLine-Offset*Band;//在圖表上繪制布林通道中軌和下軌PlotNumeric("MidLine",MidLine);PlotNumeric("dnBand",dnBand);//計算動量振蕩器,用于進場過濾器rocCalc=Clos

溫馨提示

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

評論

0/150

提交評論