新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1356 1...134913501351135213531354135513561357135813591360136113621363...1953 新评论 Tretyakov Rostyslav 2021.01.21 16:41 #13551 Lerchik:所以你的意思是,在Ask开一个市价单等于开一个买入限价单。这里有些地方不对。假设买入价等于1.4500。因此,当我们从市场上打开一个买入订单时,它将站在买入价上,而买入价是,比方说,10点。然后,该订单将在1.4510站稳。现在BuyLimit订单等于1.4500。而价格比Ask上的Ask价格低10个点就会开出订单。不是按出价而是按要价。它一点也不适合在一起。它们是不同的东西,不能这样比较。也许,我错了? 所有的买单都是以Ask开盘,以Bid平仓,卖单则 反之。 如果你懒得看,就开一个模拟账户,进行练习。 Lerchik 2021.01.21 16:47 #13552 Сергей Таболин:你为什么不从阅读文档开始呢? 以下是文件中的内容。 待定订单 挂单是经纪公司发出的在未来某个日期以特定条件买入或卖出金融工具的指令。有以下几种类型的挂单。 买入限价- 在等于或低于订单中指定的卖出价的交易请求。当前的价格水平高于订单中的价值。通常这种类型的订单是在期望证券价格在下降到某一水平时开始增长的情况下下达的。 但我不明白这里写的是什么,如何运作。 也就是说,价格将下降到bylimit以下,Askom将打开一个订单。但同时,订单将以相同的价格或更高的价格打开? 任何地方都没有这方面的内容。只有规则。这里没有人愿意解释原因。 因此,我正在努力实现一些目标。 Artyom Trishkin 2021.01.21 16:54 #13553 Lerchik:以下是文件中的内容。待定订单挂单是经纪公司发出的在未来特定条件下购买或出售金融工具的指令。有以下几种类型的挂单。 买入限价- 在等于或低于订单中指定的卖出价的交易请求。当前的价格水平高于订单中的价值。通常这种类型的订单是在期望工具价格在下降到某一水平时开始增长。 但我不明白这里写的是什么,如何运作。也就是说,价格将下降到bylimit以下,Askom将打开一个订单。但同时,订单将以相同的价格或更高的价格打开?任何地方都没有这方面的内容。只有规则。这里没有人愿意解释原因。因此,我想取得一些成就。 买入限价可以只设置在卖出价以下。SellLimit只能被设置为高于Bid价格。 买入止损只能设置在卖出价之上。SellStop只能设置在Bid价格以下。 当相应的价格达到相应的订单时,它将被激活并创建相应的头寸。 Tretyakov Rostyslav 2021.01.21 16:56 #13554 Lerchik:以下是文件中的内容。待定订单挂单是经纪公司发出的在未来特定条件下购买或出售金融工具的指令。有以下几种类型的挂单。 买入限价- 在等于或低于订单中指定的卖出价的交易请求。当前的价格水平高于订单中的价值。通常这种类型的订单是在期望工具价格在下降到某一水平时开始增长。 但我不明白这里写的是什么,如何运作。也就是说,价格将下降到bylimit以下,Askom将打开一个订单。但同时,订单将以相同的价格或更高的价格打开?任何地方都没有这方面的内容。只有规则。这里没有人愿意解释原因。因此,我正在伸手寻找一些东西。 开设一个模拟账户并进行尝试。 买入限价 设置在 当前卖出价之下 ,并将在卖出价更低时 打开。 买入止损设置在当前卖出价 之上 ,将在卖出价上升 时打开。 以 当前 卖出价 买入开盘 Lerchik 2021.01.21 17:02 #13555 MakarFX:开设一个模拟账户并进行练习。 买入限价 设置在 当前卖出价以下 ,并在卖出价下跌 时打开。 买入止损设置在当前卖出价 之上 ,将在卖出价上升 时打开。 以 当前 卖出价 买入开盘 这是件大事。 继续前进... 好的,买入价已经低于卖出价,卖出价打开订单。但是,订单价格是保持与订单中设定的相同,还是会有所不同? Tretyakov Rostyslav 2021.01.21 17:05 #13556 Lerchik:这是件大事。继续前进...好的,买入价已经跌破了订单的价格,Ascom已经开出了订单。但是,订单价格是保持与订单中设定的相同,还是会有所不同? 1 卖出价应该下降到 "赔率 "价格。 2 价格保持不变 Lerchik 2021.01.21 17:09 #13557 MakarFX:1 上升的价格应该下降到停顿的价格。2 价格保持不变 非常感谢您的澄清。 我在想为什么它没有按照我想要的方式工作。 DanilaMactep 2021.01.22 10:53 #13558 大家下午好。 就我对前一个问题的答案的理解,我只需要处理错误,这可能是在打开订单时发生的,这是第一件事。第二,我需要保护EA在出现错误的情况下不至于每一次勾选 都让服务器崩溃。 第一个 问题,请告诉我如何进行错误处理? 第二个 问题--如何保护自己免受服务器的冲击? 现在我的交易是这样开启的 /*УСЛОВИЕ 1*/ if(flag_screen1==en_vbIkl_screen1 &&flag_screen2==en_vbIkl_screen2) { // НАЧАЛО УСЛОВИЕ 1 if(ao_buy!=EMPTY_VALUE && count_orders_market_buy ==0) { if(OrderSend(Symbol(),OP_BUY,lot,Ask,slippages,Bid-sl,Bid+tp ,comment_ao_market_buy)) Print("Buy Open"); // ОТКРЫВАЕМ БАЙ ОРДЕР } } // КОНЕЦ УСЛОВИЕ1 // И ОТЛОЖКИ ВОТ ТАК /*УСЛОВИЕ 1*/ if(flag_screen1==en_vbIkl_screen1 &&flag_screen2==en_vbIkl_screen2) { // НАЧАЛО УСЛОВИЕ 1 if(ao_buy!=EMPTY_VALUE && count_orders_stop_buy ==0&& max_Price>Bid) { //НАЧАЛО ПРОВЕРКИ УСЛОВИЯ 1 НА ОТКРЫТИЕ Print("БАЙ СТОП AO УСЛОВИЕ 1"); if( OrderSend(Symbol(),OP_BUYSTOP,lot,max_Price,slippages,max_Price-sl,max_Price+tp ,comment_ao_otloj_buy,Magik_number,TimeCurrent()+order_life_time))Print("BUY_STOP OPEN"); // ОТКРЫВАЕМ ОТЛОЖЕННЫЙ БАЙ ОРДЕР } //КОНЕЦ ПРОВЕРКИ УСЛОВИЯ 1 НА ОТКРЫТИЕ } // КОНЕЦ УСЛОВИЕ1 变量Count Market Buy是用这个函数计算的 void data_orders(string comment="alt",int magik_number=123) { int I = 0; count_orders_all = 0; //КОЛИЧЕСТВО ВСЕХ УСТАНОВЛЕННЫХ ОРДЕРОВ count_orders_market_all = 0; //КОЛИЧСТВО ВСЕХ РЫНОЧНЫХ ОРДЕРОВ count_orders_market_buy = 0; count_orders_stop_buy = 0; //КОЛИЧЕСТВО СТОП БАЕВ count_orders_limit_buy = 0; // КОЛИЧЕСТВО ЛИМИТ БАЕВ count_orders_stop_sell = 0; //КОЛИЧЕСТВО СТОП СЕЛОВ count_orders_limit_sell = 0; //КОЛИЧЕСТВО ЛИМИТ СЕЛОВ lot_orders_buy = 0; //ОБЪЁМ ЛОТА ПО БАЙ ОРДЕРАМ lot_orders_sell = 0; //ОБЪЁМ ЛОТА ПО СЕЛЛ ОРДЕРАМ balance_all = 0; // БАЛАНС ПО ВСЕМ ОРДЕРАМ balance_buy = 0; // БАЛАНС ПО ОРДЕРАМ БАЙ balance_sell = 0; // БАЛАНС ПО ОРДЕРАМ СЕЛЛ for(int i = 0; i <= OrdersTotal();i ++) // перебор всех ордеров в цикле { if(OrderSelect(I , SELECT_BY_POS, MODE_TRADES))// выбираем ордер по переменной цикла { if(OrderMagicNumber() != magik_number || OrderSymbol() !=Symbol()) // если ордер не нашь то { continue; // переходим на следующую итерацию } if(comment== OrderComment() || comment=="alt")// если коментарий нашь то { count_orders_all+=1; if(OrderType()== OP_BUY) { count_orders_market_all+=1; count_orders_market_buy+=1; } if(OrderType()== OP_SELL) { count_orders_market_all+=1; count_orders_market_sell+=1; } if(OrderType()== OP_BUYSTOP) { count_orders_stop_buy+=1; } if(OrderType()== OP_BUYLIMIT) { count_orders_limit_buy+=1; } if(OrderType()== OP_SELLSTOP) { count_orders_stop_sell+=1; } if(OrderType()== OP_SELLLIMIT) { count_orders_limit_sell+=1; } } } } } 如果我想以这种方式进行交易,我想知道如何避免在出现错误时服务器颤动。 Tretyakov Rostyslav 2021.01.22 11:46 #13559 DanilaMactep:大家下午好。 请给我写信,告诉我如何正确处理错误,以及如何避免服务器在发生错误时每次都鸣叫? if (GetLastError()==141){Alert(GetLastError()); ExpertRemove();} DanilaMactep 2021.01.22 12:53 #13560 MakarFX: 这个请求应该写在每一行试图使用Ordersend打开订单的后面,对吗? 但我有一个问题--如果删除EA已经从图表中删除了EA,我应该如何让它自动重新连接到图表上并继续工作? 你能否更详细地描述一下这个问题--错误141-- 请求太 多。如果有太多的请求,我们就从图表中删除EA。 接下来我应该怎么做--等到早上起床后,改变一切,然后到电脑前再次将EA附加到图表中? 1...134913501351135213531354135513561357135813591360136113621363...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
所以你的意思是,在Ask开一个市价单等于开一个买入限价单。
这里有些地方不对。假设买入价等于1.4500。因此,当我们从市场上打开一个买入订单时,它将站在买入价上,而买入价是,比方说,10点。
然后,该订单将在1.4510站稳。
现在BuyLimit订单等于1.4500。而价格比Ask上的Ask价格低10个点就会开出订单。不是按出价而是按要价。
它一点也不适合在一起。它们是不同的东西,不能这样比较。
也许,我错了?
所有的买单都是以Ask开盘,以Bid平仓,卖单则 反之。
如果你懒得看,就开一个模拟账户,进行练习。
你为什么不从阅读文档开始呢?
以下是文件中的内容。
待定订单
挂单是经纪公司发出的在未来某个日期以特定条件买入或卖出金融工具的指令。有以下几种类型的挂单。
但我不明白这里写的是什么,如何运作。
也就是说,价格将下降到bylimit以下,Askom将打开一个订单。但同时,订单将以相同的价格或更高的价格打开?
任何地方都没有这方面的内容。只有规则。这里没有人愿意解释原因。
因此,我正在努力实现一些目标。
以下是文件中的内容。
待定订单
挂单是经纪公司发出的在未来特定条件下购买或出售金融工具的指令。有以下几种类型的挂单。
但我不明白这里写的是什么,如何运作。
也就是说,价格将下降到bylimit以下,Askom将打开一个订单。但同时,订单将以相同的价格或更高的价格打开?
任何地方都没有这方面的内容。只有规则。这里没有人愿意解释原因。
因此,我想取得一些成就。
买入限价可以只设置在卖出价以下。SellLimit只能被设置为高于Bid价格。
买入止损只能设置在卖出价之上。SellStop只能设置在Bid价格以下。
当相应的价格达到相应的订单时,它将被激活并创建相应的头寸。
以下是文件中的内容。
待定订单
挂单是经纪公司发出的在未来特定条件下购买或出售金融工具的指令。有以下几种类型的挂单。
但我不明白这里写的是什么,如何运作。
也就是说,价格将下降到bylimit以下,Askom将打开一个订单。但同时,订单将以相同的价格或更高的价格打开?
任何地方都没有这方面的内容。只有规则。这里没有人愿意解释原因。
因此,我正在伸手寻找一些东西。
开设一个模拟账户并进行尝试。
买入限价 设置在 当前卖出价之下 ,并将在卖出价更低时 打开。
买入止损设置在当前卖出价 之上 ,将在卖出价上升 时打开。
以 当前 卖出价 买入开盘
开设一个模拟账户并进行练习。
买入限价 设置在 当前卖出价以下 ,并在卖出价下跌 时打开。
买入止损设置在当前卖出价 之上 ,将在卖出价上升 时打开。
以 当前 卖出价 买入开盘
这是件大事。
继续前进...
好的,买入价已经低于卖出价,卖出价打开订单。但是,订单价格是保持与订单中设定的相同,还是会有所不同?
这是件大事。
继续前进...
好的,买入价已经跌破了订单的价格,Ascom已经开出了订单。但是,订单价格是保持与订单中设定的相同,还是会有所不同?
1 卖出价应该下降到 "赔率 "价格。
2 价格保持不变
1 上升的价格应该下降到停顿的价格。
2 价格保持不变
非常感谢您的澄清。
我在想为什么它没有按照我想要的方式工作。
大家下午好。
就我对前一个问题的答案的理解,我只需要处理错误,这可能是在打开订单时发生的,这是第一件事。第二,我需要保护EA在出现错误的情况下不至于每一次勾选 都让服务器崩溃。
第一个 问题,请告诉我如何进行错误处理?
第二个 问题--如何保护自己免受服务器的冲击?
现在我的交易是这样开启的
变量Count Market Buy是用这个函数计算的
如果我想以这种方式进行交易,我想知道如何避免在出现错误时服务器颤动。
大家下午好。
请给我写信,告诉我如何正确处理错误,以及如何避免服务器在发生错误时每次都鸣叫?这个请求应该写在每一行试图使用Ordersend打开订单的后面,对吗?
但我有一个问题--如果删除EA已经从图表中删除了EA,我应该如何让它自动重新连接到图表上并继续工作? 你能否更详细地描述一下这个问题--错误141-- 请求太 多。如果有太多的请求,我们就从图表中删除EA。 接下来我应该怎么做--等到早上起床后,改变一切,然后到电脑前再次将EA附加到图表中?