龙听期货论坛's Archiver

龙听 发表于 2020-10-29 06:55

【MultiCharts(MC)程序化(量化)网上培训学习系列】第88节:【高低点互换突破策略+三均线过滤】策略完整策略范例程式码及检查效果

[attach]24963[/attach]

[size=14.4px]1、效果图;[/size]

[size=14.4px]2、通过[/size][size=14.4px]期货[/size][size=14.4px]论坛推荐新开立期货账号享受特惠政策:[/size][url=http://www.qhlt.cn/thread-25049-1-1.html]http://www.qhlt.cn/thread-25049-1-1.html[/url][size=14.4px];[/size]

[size=14.4px]3、通过期货论坛开立期货账号并绑定MC享受专属优惠政策:[/size][url=http://www.qhlt.cn/thread-80442-1-1.html]http://www.qhlt.cn/thread-80442-1-1.html[/url][size=14.4px];[/size]

[size=14.4px]4、代写与求助:[/size][url=http://www.qhlt.cn/forum-109-1.html]http://www.qhlt.cn/forum-109-1.html[/url][size=14.4px];[/size]

[size=14.4px]5、期货论坛[/size][size=14.4px]策略[/size][size=14.4px]源码[/size][size=14.4px]区:[/size][url=http://www.qhlt.cn/forum-109-1.html]http://www.qhlt.cn/forum-109-1.html[/url][size=14.4px] ;[/size]

[size=14.4px]6、期货论坛官方MC[/size][size=14.4px]量化[/size][size=14.4px]策略群,对视频中策略有想法、建议、优化以结交量化好友,动动手,扫二维码加入微信群,跟一众量化好友切磋吧:[url]http://www.qhlt.cn/thread-262-1-1.html[/url] ;[/size]

龙听 发表于 2020-10-29 06:58

视频地址:[mp4]http://mp4.qhlt.club/Rec%200088.mp4[/mp4]

龙听 发表于 2020-10-29 07:00

视频中程式码:**** Hidden Message *****[/size]

源码解析:【经过TS-MC转换】

[code]定義參數與變數
inputs: FastLen(4),XMALen(4),VolLen(8),Multfrac(2) ;
vars:TopBand(0),BotBand(0),Xavg(0),FastMA(0),MedMA(0),SlowMA(0),BullTrend(false),BearTrend(false);

進場規則準備
1.計算短期收盤移動平均線( 4根K棒)、 中期收盤移動平均線( 9根K棒),長期收盤移動平均線( 18根K棒)。

FastMA = Average(Close,FastLen) ; { FastLen = 4 }
MedMA = Average(Close,FastLen*2+1) ; { FastLen*2+1 = 9 }
SlowMA = Average(Close,FastLen*4+2) ;{ FastLen*4+2 = 18 也可以使用 MedMA*2 }

為了後續回測方便 ,我們可以利用計算式的來控制短中長期 K棒數彼此的對應關係(粗體字)

2.當短期移動平均大於中期移動平均,且中期移動平均大於長期移動平均線,我們認為市場是牛市的趨勢。
BullTrend = FastMA > MedMA and MedMA > SlowMA ;

3.當短期移動平均小於中期移動平均,且中期移動平均小於長期移動平均線,我們認為市場是熊市的趨勢。
BearTrend = FastMA < MedMA and MedMA < SlowMA ;

4.計算 4根K棒收盤價的指數移動平均線。
Xavg = Xaverage(Close,XMALen) ;

5.第一根K棒,定義開盤價加上最後 8 根K棒的波動值*2 為通道上緣。
6.第一根K棒,定義開盤價減去最後 8 根K棒的波動值*2 為通道下緣。
if BarNumber = 1 then Begin
TopBand = Open + Volatility(VolLen)*Multfrac ;
BotBand = Open - Volatility(VolLen)*Multfrac ;
end;

7.牛市時,當指數移動平均線向上穿越通道上緣時,原通道上緣成為新的通道下緣。
新的通道上緣由新的通道下緣加上最後 8 根K棒的波動值*2 所定義。
if Xavg > TopBand and BullTrend then Begin
BotBand = TopBand ;
TopBand = BotBand + Volatility(VolLen)*MultFrac ;
end;

8.熊市時,當指數移動平均線向下穿越通道下緣時,原通道下緣成為新的通道上緣。
新的通道下緣由新的通道上緣減去最後 8 根K棒的波動值*2 所定義。
if Xavg < BotBand and BearTrend then Begin
TopBand = BotBand ;
BotBand = TopBand - Volatility(VolLen)*MultFrac ;
end;

作多進場邏輯
當市場處於牛市時,指數移動平均線向上穿越通道上緣,在這根K棒收盤時作多。
if Xavg > TopBand and BullTrend then Begin
Buy this bar on Close ;
end;

作空進場邏輯
當市場處於熊市時,指數移動平均線向下穿越通道下緣,在這根K棒收盤時作空。
if Xavg < BotBand and BearTrend then Begin
Sell this bar on Close ;
end;

出場規則
1.手中持有多單部位時,當價格回落到通道下緣多單平倉。
if MarketPosition = 1 then ExitLong next bar at BotBand stop ;

2.手中持有空單部位時,當價格突破到通道上緣空單平倉。
if MarketPosition = -1 then ExitShort next bar at TopBand stop ;

3.設立必要的停損保護。[/code]

龙听 发表于 2020-10-29 07:00

螺纹指数日线运行及回测
[attach]24964[/attach]

[attach]24965[/attach]

龙听 发表于 2020-10-29 07:01

螺纹指数2小时线运行及回测
[attach]24966[/attach]

[attach]24967[/attach]

龙听 发表于 2020-10-29 07:02

螺纹指数1小时线运行及回测
[attach]24968[/attach]

[attach]24969[/attach]

徐永礼 发表于 2020-11-1 09:18

感谢版主分享

本来周 发表于 2020-11-30 22:26

感谢楼主分享

夷吾 发表于 2021-1-5 10:29

感谢分享

龙听 发表于 2021-9-29 11:03

(每天上架新策略、跟着视频学编程)

页: [1]