📅 财经日历 📊 实时波动 📈 大盘云图 📶 行情走势 🆚 投机情绪 🚀 今日热点

    求助:给macd sample EA加上移动止赢止损策略。。谢谢。

    2011-09-20 · 6905 阅读


    • /*
    • MACD Sample详解
    • //+------------------------------------------------------------------+
    • //|                                                  MACD Sample.mq4 |
    • //|                      Copyright ?2005, MetaQuotes Software Corp. |
    • //|                                       http://www.metaquotes.net/ |
    • //+------------------------------------------------------------------+
    • 以上是垃圾
    • */
    • //这是自定义函数
    • extern double TakeProfit = 50;   //盈利目标点数
    • extern double Lots = 0.1;       //每单入场的手数
    • extern double TrailingStop = 30; //追踪止损的点数
    • extern double MACDOpenLevel=3; //MACD开仓的参考位置
    • extern double MACDCloseLevel=2; //MACD出场的参考位置
    • extern double MATrendPeriod=26; //条件中使用的MA均线的周期数
    • //程序最上面extern开始的这些数据都是程序参数,
    • //也就是在使用者调用的时候可以修改的部分。
    • //这个EA是个常见的技术指标条件入场,条件出场
    • //同时又移动止损功能的完成示意,
    • //很适合初学者研究。
    • //先总结这个程序的基本条件的意思 以方便大家对号入座,尽快理解。
    • //多头入场条件:buy
    •   // MACD小于0 并且 小于指定的参数MACDOpenLevel   
    •    //并且 MACD讯号下下穿基准线(死叉) 并且 MA向上趋势
    • //多头出场条件:Close buy
    •   // MACD大于0 并且 大于指定的参数MACDCloseLevel
    •    //并且 MACD信号线上传基准线(金叉)
    • //空头入场条件:sell
    • //MACD大于0 并且 大于指定的参数MACDOpenLevel   
    • //并且 MACD讯号线上穿基准线(金叉) 并且 MA向下趋势
    • //空头出场条件: Close sell
    • //MACD小于0 并且 小于制定的参数MACDCloseLevel   
    • //并且 MACD讯号线下穿基准线(死叉)
    • //=============================================================
    • //有了以上的初步了解,下面开始进行EA程序基本结构的分析:
    • //1、start()函数是最重要的执行部分,
    • //每来一个价格 此函数都自动执行一次,所以主要的逻辑结构都在这个函数里
    • //2、程序的基本流程都是按照以下步骤进行,
    • //我们先牢牢记住这个结构,然后再对号入座去理解程序。
    • //先判断当前自身的仓位状态,因为start函数式循环运行的,
    • //所以中间的每个步骤都会使用start函数,因此,
    • //当函数开始的时候我们首先要通过MT4的仓位操作函数获得当前的仓位状态,
    • ///并进一步根据状态进行不同分支的计算。
    • //程序开始的以下两个部分不重要 简单说一下:
    • int start()
    •   {
    • //这是自定义函数
    •    double MacdCurrent, MacdPrevious, SignalCurrent;
    •    double SignalPrevious, MaCurrent, MaPrevious;
    •    int cnt, ticket, total;
    • //这是多余的检查
    • if(Bars(MACDOpenLevel*Point) && MaCurrent0)//如果有单
    •           {
    •          if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
    •          Print(\"SELL order opened : \",OrderOpenPrice());//这是多余的检查
    •           }
    •           //这是多余的检查
    •          else Print(\"Error opening SELL order : \",GetLastError()); //如果错误就打印
    •          return(0); //返回
    •         }
    •       return(0);//返回
    •      }
    •    // it is important to enter the market correctly,
    •    // but it is more important to exit it correctly...   
    •    for(cnt=0;cnt(MACDCloseLevel*Point))
    •                 {
    •                  OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position
    •                  return(0); // exit
    •                 }
    •             // check for trailing stop检查追踪止损
    •             if(TrailingStop>0)  
    •               {                 
    •                if(Bid-OrderOpenPrice()>Point*TrailingStop)
    •                  {
    •                   if(OrderStopLoss()0)  //追踪止损重复了2次(没有水准的编写)
    •               {                 
    •                if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
    •                  {
    •                   if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
    •                     {
    •                     //如果检查条件符合就OrderModify buy的单
    •                      OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
    •                      return(0);
    •                     }
    •                  }
    •               }
    •            }
    •         }
    •      }
    •    return(0);//返回上面再从头执行
    •   }// the end.完

    复制代码
    我想把MACD这个EA的止损去掉,修改成为止损止赢的保护策略。。我的止损止赢策略是一个多单或空单,
      当赢利30点,那么在开仓价的+N点做一个止损止赢的保护,当价格若回撤到止损位的时候,就平仓了;
      当赢利50点,那么在开仓价的+N*3点做一个止损止赢的保护,当价格若回撤到止损位的时候,就平仓了;
      当赢利70点,那么在开仓价的+N*5点做一个止损止赢的保护,当价格若回撤到止损位的时候,就平仓了;
      当赢利80点,那么在开仓价的+N*6点做一个止损止赢的保护,当价格若回撤到止损位的时候,就平仓了;
      
      弄了几天没成功。。求助各位高手。。版主求助。。
      万分感谢。。
    ""
    还没有人打赏,支持一下
    回复

    举报

     

    回答|共 16 个

    lramr LV6

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    天啊.  

    hate LV6

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    一楼的位置好啊..  

    lramr LV6

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    唉,悲催的外汇。。  

    爻爻 LV5

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    给推荐一个好的平台,这样EA才能很好的发挥啊  

    姐想赚钱 LV5

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    你还想说什么啊....  

    我爱sqq LV5

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    朕要休息了..............  

    操盘手 LV9

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    我有个群,大家一起来讨论EA.  

    madydela07 LV5

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    加油啊!!!!顶哦!!!!!  

    yzopqjam LV5

    发表于 2012-11-22 00:28:10 | 显示全部楼层

    经过你的指点 我还是没找到在哪 ~~~  
    12下一页
    您需要登录后才可以回帖 登录 | 注册

    提醒: 禁止引战、谩骂、灌水内容

    微信二维码

    有问题联系客服