均价线策略(MC版)_第1页
均价线策略(MC版)_第2页
均价线策略(MC版)_第3页
均价线策略(MC版)_第4页
均价线策略(MC版)_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

均价线策略(MC版)本策略文档主要介绍了两个部分的交易逻辑,包括基于技术指标的交易信号生成和移动止盈辅助策略。以下是对策略逻辑的详细分析和特点总结:一、基于技术指标的交易信号生成1.变量初始化与计算:策略开始时定义了多个变量用于后续的计算,包括短期和长期的收盘价均线值(var1,var2,var4,var5),它们的差值(var3,var6),以及10周期的平均真实波动范围(ATR,var0)。2.买入信号:当市场无持仓且短期收盘价均线高于长期收盘价均线(var3>0)时,策略会在下一根K线的最高价处买入开仓,并设置止损。3.卖出信号:在市场无持仓的情况下,如果14周期的ADX指标大于20且短期收盘价均线低于长期收盘价均线(var6<0),策略会在下一根K线的最低价处卖出开仓,并设置止损。4.平仓信号:策略还包含了两种平仓条件,一是入场后经过至少一根K线,若过去15根K线的最低价加上8倍的ATR小于过去2根K线的最高价,则卖出平仓;二是若过去15根K线的最高价减去7倍的ATR大于过去2根K线的最低价,则买入平仓。5.持仓管理:对于已有的多头持仓,策略会在下一根K线的最低价加上7个点处卖出平仓;对于空头持仓,则在最高价减去7个点处买入平仓。二、移动止盈辅助策略1.变量初始化与ATR计算:此部分策略同样定义了多个变量用于存储出场价格、ATR值以及入场后的最高价和最低价。ATR的计算周期为30。2.最高价与最低价的更新:策略会持续更新入场后的最高价和最低价,以便于计算出场价格。3.多头与空头管理:对于多头仓位,策略计算出场价格为入场后最高价减去ATR的倍数乘以ATR值,并根据条件在适当时机进行止损卖出或记录出场价格。对于空头仓位,策略以类似的方式计算买入平仓价格,并执行相应的操作。策略特点总结-综合运用多种技术指标:策略结合了平均真实波动范围(ATR)、收盘价均线(XAverage)、平均趋向指标(ADX)等多种技术指标,以提高交易信号的准确性。-动态止损与止盈:通过设置动态的止损和止盈点,策略能够根据市场波动自动调整,减少潜在的损失并锁定利润。-明确的买卖信号:策略提供了清晰的买入、卖出和平仓信号,便于交易者执行。-风险管理:策略中包含了严格的风险管理措施,如设置止损点和限制持仓时间,以控制风险并保护资金安全。该策略通过综合分析和运用多种技术指标,旨在实现稳健的交易表现和有效的风险管理。①策略信号代码的解释:var:var0(0),var1(0),var2(0),var3(0),var4(0),var5(0),var6(0);//定义多个变量用于后续计算。var0=AvgTrueRange(10);//计算10周期的平均真实波动范围(ATR)并赋值给var0。var1=XAverage(close,6);//计算6周期的收盘价XAverage均线值并赋值给var1。var2=XAverage(close,22);//计算22周期的收盘价XAverage均线值并赋值给var2。var3=var1-var2;//计算var1和var2的差值并赋值给var3。var4=XAverage(close,7);//计算7周期的收盘价XAverage均线值并赋值给var4。var5=XAverage(close,24);//计算24周期的收盘价XAverage均线值并赋值给var5。var6=var4-var5;//计算var4和var5的差值并赋值给var6。ifmarketposition=0andvar3>0thenbuy("L")nextbaratHighest(high,4)stop;//如果当前没有持仓且var3大于0,则在下一根K线以过去4根K线的最高价作为止损价买入开仓,并标记为"L"信号。ifmarketposition=0andadx(14)>20andvar6<0thensellshort("S")nextbaratLowest(low,3)stop;//如果当前没有持仓且14周期的平均趋向指标(ADX)大于20且var6小于0,则在下一根K线以过去3根K线的最低价作为止损价卖出开仓,并标记为"S"信号。ifbarssinceentry>0thenbegin//如果入场后已经经过了至少一根K线。ifLowest(low,15)+8*var0<Highest(high,2)thensell("lexit")nextbaratClose-4pointstop;//如果过去15根K线的最低价加上8倍的var0小于过去2根K线的最高价,则在下一根K线以当前收盘价减去4个点作为止损价卖出平仓,并标记为"lexit"信号。ifHighest(high,15)-7*var0>Lowest(low,2)thenbuytocover("sexit")nextbaratClose+4pointstop;//如果过去15根K线的最高价减去7倍的var0大于过去2根K线的最低价,则在下一根K线以当前收盘价加上4个点作为止损价买入平仓,并标记为"sexit"信号。end;ifmarketposition=1thensell("L-trail")nextbaratLowest(low,21)+7pointstop;//如果当前是多头持仓,则在下一根K线以过去21根K线的最低价加上7个点作为止损价卖出平仓,并标记为"L-trail"信号。ifmarketposition=-1thenbuytocover("S-trail")nextbaratHighest(high,21)-7pointstop;//如果当前是空头持仓,则在下一根K线以过去21根K线的最高价减去7个点作为止损价买入平仓,并标记为"S-trail"信号。②(注解)附一个atr移动止盈辅助策略信号:Input:atrlen(30),trailatrmult(3);//输入参数,atrlen表示计算ATR的周期为30,trailatrmult表示ATR的倍数为3。var:lexit(0),sexit(0),atr(0),top(0),bot(0);//定义变量,lexit和sexit用于存储出场价格,atr存储ATR值,top和bot分别用于存储入场后的最高价和最低价。atr=AvgTrueRange(atrlen);//计算atrlen(30)周期的平均真实波动范围(ATR)并赋值给atr。ifbarssinceentry=0thenbegin//initalhighandlow//如果是入场后的第一根K线。top=high;//将入场后的第一根K线的最高价赋值给top。bot=Low;//将入场后的第一根K线的最低价赋值给bot。end;ifhigh>topthentop=high;//findthehighestpointsinceentry//如果当前K线的最高价高于之前记录的最高价top,则更新top为当前最高价。ifLow<botthenbot=low;//findthenlowestpointsineentry//如果当前K线的最低价低于之前记录的最低价bot,则更新bot为当前最低价。ifmarketposition=1thenbegin//managelongposition//如果当前处于多头仓位。lexit=top-trailatrmult*atr;//计算多头出场价格,为入场后的最高价减去ATR的倍数乘以ATR值。ifbarssinceentry=0andClose<lexitthensell("Atr-nextdayout")allsharesnextbaratOpen;//如果是入场后的第一根K线且当前收盘价小于多头出场价格,则在下一根K线开盘时以“Atr-nextdayout”信号卖出全部多头仓位。ifbarssinceentry>0thenbegin//如果不是入场后的第一根K线。sell("atr-tail-stop")allsharesnextbaratlexitstop;//在下一根K线以lexit的价格进行止损卖出全部多头仓位。value1=tl_new(date[1],time,lexit[1],date,time,lexit);//创建一个新的时间序列数据value1,记录下一根K线的日期、时间、上一根K线的多头出场价格以及当前日期、时间和多头出场价格。end;end;ifmarketposition=-1thenbegin//manageshortposition//如果当前处于空头仓位。sexit=bot+trailatrmult*atr;//计算空头出场价格,为入场后的最低价加上ATR的倍数乘以ATR值。ifbarssinceentry=0andClose>sexitthensell("atr-nextdayout")allsharesnextbaratOpen;//如果是入场后的第一根K线且当前收盘价大于空头出场价格,则在下一根K线开盘时以“Atr-nextdayout”信号卖出全部空头仓位。ifbarssinceentry>0thenbegin//如果不是入场后的第一根K线。buytocover("atr-trail-stop")allsharesnextbaratsexitstop;//在下一根K线以sexit的价格进行止损买入平仓全部空头仓位。value1=tl_new(date[1],time,sexit[1],date,time,sexit);//创建一个新的时间序列数据value1,记录下一根K线的日期、时间、上一根K线的空头出场价格以及当前日期、时间和空头出场价格。end;end;策略信号代码:var:var0(0),var1(0),var2(0),var3(0),var4(0),var5(0),var6(0);var0=AvgTrueRange(10);var1=XAverage(close,6);var2=XAverage(close,22);var3=var1-var2;var4=XAverage(close,7);var5=XAverage(close,24);var6=var4-var5;ifmarketposition=0andvar3>0thenbuy("L")nextbaratHighest(high,4)stop;ifmarketposition=0andadx(14)>20andvar6<0thensellshort("S")nextbaratLowest(low,3)stop;ifbarssinceentry>0thenbeginifLowest(low,15)+8*var0<Highest(high,2)thensell("lexit")nextbaratClose-4pointstop;ifHighest(high,15)-7*var0>Lowest(low,2)thenbuytocover("sexit")nextbaratClose+4pointstop;end;ifmarketposition=1thensell("L-trail")nextbaratLowest(low,21)+7pointstop;ifmarketposition=-1thenbuytocover("S-trail")nextbaratHighest(high,21)-7pointstop;②附一个atr移动止盈辅助策略信号代码:Input:atrlen(30),trailatrmult(3);var:lexit(0),sexit(0),atr(0),top(0),bot(0);atr=AvgTrueRange(atrlen);ifbarssinceentry=0thenbegin//initalhighandlowtop=high;bot=Low;end;ifhigh>topthentop=high;ifLow<botthenbot=low;

ifm

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论