智能交易网,程序化交易,自动交易,量化交易

 找回密码
 注册

QQ登录

只需一步,快速开始

手机短信登录

参加MT4智能交易编程培训,7课免费在线试听MT4指标,EA代写,或EA指标加密账户远程验证服务 最完善商业MT4跟单系统(0.1秒极速响应不漏单)
为论坛做贡献有奖学金,奖学金可直接换真钱 扫本站微信公 众号部分视频课程指标EA免费得智能交易网MT4操盘神器,扫公众号免费得
查看: 1574|回复: 0

赵老师第七课buy自定义函数,为什么我运行时就是开不了单?(已解决)

[复制链接]
发表于 2015-8-18 08:45:30 | 显示全部楼层 |阅读模式
本帖最后由 jjf79069 于 2015-8-21 10:50 编辑

这段代码运行后就是没有开单(已排除Close[0]、Open[0]的可能),可是赵老师讲课视频上却可以运行下单!


void OnTick()//每个价格波动 就执行一次
  {
    if(Close[0]>Open[0])
      {
         buy(0.1,Ask-100*Point,Ask+100*Point,"duo",magic);
        
      }
    for(int i=0;i<OrdersTotal();i++)
      {
        if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
          {
            int ti=OrderTicket();
            double op=OrderOpenPrice();
            double sl=OrderStopLoss();
            double lots=OrderLots();
            string zhushi=OrderComment();
            int ma=OrderMagicNumber();
            int a=9;
          }
      }
  }
int buy(double lots,double sl,double tp,string com,int buymagic)
  {
    int a=0;
    bool zhaodan=false;
     for(int i=0;i<OrdersTotal();i++)
      {
        if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
          {
            string zhushi=OrderComment();
            int ma=OrderMagicNumber();
            if(zhushi==com && ma==buymagic)
              {
                zhaodan=true;
                break;
              }
          }
      }
    if(zhaodan==false)
      {
        
          a=OrderSend(Symbol(),OP_BUY,lots,Ask,50,Ask-sl*Point,Ask+tp*Point,com,buymagic,0,White);
         }
        
    return(a);
  }



终于找到上面错误的地方
应该把a=OrderSend(Symbol(),OP_BUY,lots,Ask,50,Ask-sl*Point,0,com,buymagic,0,White);改为
a=OrderSend(Symbol(),OP_BUY,lots,Ask,50,sl,tp,com,buymagic,0,White)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|sitemap| 智能交易网,程序化交易,自动交易,量化交易 ( 苏ICP备08108698号,苏州智德金网络科技股份有限公司版权所有 )

GMT+8, 2020-7-4 06:11 , Processed in 0.091962 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表