任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 549

 
GSB:

不是的,如果你把int slippage放在前面,它将分配4个字节,所以你必须加到8(int reserve)或者用long代替int。


这里还有一个奇怪的时刻。如果它是一个字符串 结构的元素,那么如果这个字符串 类型的可变字符数超过7个,我们是否会把它放在其他元素之上?因为字符串的末尾总是有一个空字符(n),如果字符串中有超过7个项目,例如8个项目,那么字符串将有8+1个字节,因为8+\n。对吗?
 
GSB:

129错误发生在价格在DC执行你的订单之前有时间变化时,使用更大的滑点。


滑点是50个旧点,小数点后的价格有5或4位,有时是12或16。我在演示中测试了它。
 
Example2:


不,不是在测试器中,只是一个模拟账户。

已经注意到你的帖子并删除了我的帖子--从最后一页写起。没有代码,就很难告诉你具体的情况。
 
artmedia70:
已经注意到你的帖子并删除了我的帖子--从最后一页写起。没有代码,就很难告诉你具体的情况。


我应该在论坛上发给你还是私下里发给你?
 
Example2:

你想让我在论坛上发布还是亲自来?
如果你不介意的话,请把它放在论坛上。有人会纠正它。我已经爬上了床--现在是早上5点半,马还没睡......
 
我也要去睡觉了。
附加的文件:
 
     USDCADAsk = MarketInfo("USDCAD",MODE_ASK);            
     USDCADBid = MarketInfo("USDCAD",MODE_BID);

     Comment("USDCADAsk = "+DoubleToStr(USDCADAsk,нужный диджитлс),"\n",
             "USDCADBid = "+DoubleToStr(USDCADBid,нужный диджитлс));
 
hoz:

这里还有一个奇怪的时刻。如果有一个字符串型 结构的项目,如果这个项目的可变字符数超过7,我们会把它放在其他项目之上吗?毕竟,字符串的末尾总是有一个空字符\n,如果字符串中有超过7个项目,例如8个项目,那么字符串将有8+1个字节,因为8+\n。对吗?

如果结构中包含字符串 类型的变量和/或动态数组对象 ,编译器会给这样的结构分配一个隐含的构造函数,其中所有字符串类型的结构成员都被清零 ,并且对动态数组对象进行了正确的初始化

 
Example2:

我也在睡觉。

附属文件
Kuklovod_USD_1.1.mq4


你不可能那么不专心地写代码 :)

首先,Comment("USDCADAsk = ",USDCADAsk); 然后USDCADAsk = DoubleToString(MarketInfo("USDCAD",MODE_ASK),usdcaddigits); USDCADAsk被声明为一个双数,但你把一个字符串放在里面。

然后再Digits....^)和

你必须自己去寻找这样的错误,没有人会像贸易一样为你解决这些问题。 编译器产生了28个错误,而你把演示版投入交易。你可能会后悔你没有进行真正的交易,因为市场会纠正你的错误!

 if (USDCHF){while(IsTradeContextBusy()){Sleep(10);}
                    RefreshRates();
                    Result[1] = OrderSend("USDCHF",OP_BUY,Lot,USDCHFAsk,slip,USDCHFAsk-NormalizeDouble(sl*Point,Digits),USDCHFAsk+NormalizeDouble(tp*Point,Digits),"USDCHF",magic[0],0,Red);
                    if (Result[1] < 0){Alert("Функция OpenOrders ","\n","Валютная пара "+"USDCHF","\n",
                    "Команда: открыть ордер Sell","\n", "Ответ сервера: " ,errors(GetLastError()) );}}
        if (USDJPY){while(IsTradeContextBusy()){Sleep(10);}
                    RefreshRates();
                    Result[2] = OrderSend("USDJPY",OP_BUY,Lot,USDJPYAsk,slip,USDJPYAsk-NormalizeDouble(sl*Point,Digits),USDJPYAsk+NormalizeDouble(tp*Point,Digits),"USDJPY",magic[0],0,Red);
                    if (Result[2] < 0){Alert("Функция OpenOrders ","\n","Валютная пара "+"USDJPY","\n", 
                    "Команда: открыть ордер Sell","\n", "Ответ сервера: " ,errors(GetLastError()) );}}

这是谁的出价?

//-----------

void CloseOrders(){
      for (int i = OrdersTotal()-1; i>=0; i--){
         if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
             if (OrderMagicNumber() == magic[0]){
               if (USDBuySl || USDBuyTp){
                 while(IsTradeContextBusy()){Sleep(10);}
                 RefreshRates();
                 OrderClose(OrderTicket(),OrderLots(),Bid,slip,Blue);
               }
             }
   .................
        OrderClose(OrderTicket(),OrderLots(),Ask,slip,Blue);


正确的

RefreshRates();
double bid=MarketInfo(OrderSymbol(),MODE_BID);
double ask=MarketInfo(OrderSymbol(),MODE_ASK);
OrderClose(OrderTicket(),OrderLots(),bid,slip,Blue);
.............
OrderClose(OrderTicket(),OrderLots(),ask,slip,Blue);
 
帮助我找到 前一天的指标N的最大值,我通过iCustom获得数据,然后出现死锁。我认为它是通过ArrayMaximum 完成的,但如何找到这个值

我不知道iCustom应该怎么做,我想不出有什么其他选择。