检查在市场上发布的EA中的最小止损。 - 页 16 1...9101112131415161718 新评论 Andrey Khatimlianskii 2016.04.07 01:06 #151 Vladislav Andruschenko:将点差考虑在内,点差为8点。+最小止损18=26点27是可以的。而且,如果一个人需要设置100个点的止损,这意味着他将损失100个点,所以对于BAY来说,从ASC价格开始,你需要计算100个点。和来自BID的销售。 我没有说把SL放在哪里。我说过检查时要用什么价格。 Vladislav Andruschenko 2016.04.07 06:15 #152 Andrey Khatimlianskii: 我没有说把SL放在哪里。我说过检查时要用什么价格。 谢谢你。这个选项也算。 Vladislav Andruschenko 2016.04.07 06:16 #153 Taras Slobodyanik:所以你怎么能不猜呢?如果经纪人给出一个不合理的止损水平? %)...很明显,在所有的检查之后,你必须猜测才能知道最小的缩进。 你不能在布局中猜测。你必须了解一切。事先。以便不犯任何一个错误。虽然我相信来自服务器的错误并不是错误。这是一个警告。 Dmytro Zelenskyy 2016.04.07 11:58 #154 我没有在市场上销售EA 的经验,但在阅读了所有的意见后,我将投入我的五分钱。你可以尝试在菜单中选择几个选项1个变体 - 默认。这时,最小停顿完全由MODE_STOPLEVEL 决定。一定要在订单的每个动作之前要求一个新的STOPLEVEL。2 变体,如果MODE_STOPLEVEL == 0,则止损点向左 移动。3 可以选择,我们手动设置自己的止损水平,或一些乘数乘以价差。有必要引入控制。如果一个EA正在被测试或优化,止损水平不能低于点差。我认为这将使市场通过任何压力测试,包括StopLoss=1的测试。 Vladislav Andruschenko 2016.04.07 20:06 #155 Dmytro Zelenskyy:我没有在市场上销售EA 的经验,但在阅读了所有的意见后,我将投入我的五分钱。你可以尝试在菜单中选择几个选项1个变体 - 默认。这时,最小停顿完全由MODE_STOPLEVEL 决定。一定要在订单的每个动作之前要求一个新的STOPLEVEL。2 变体,如果MODE_STOPLEVEL == 0,则止损点向左 移动。3 可以选择,我们手动设置自己的止损水平,或一些乘数乘以价差。有必要引入控制。如果一个EA正在被测试或优化,止损水平不能低于点差。我认为这将使市场通过任何压力测试,包括StopLoss=1的测试。不幸的是,没有。在市场上,一切都应该自动进行。 现在这里有一个关于黄金的新的有趣的事情,有3个数字,但最后一个数字必须是四舍五入的,即最后一个数字应该是0。 最后一个数字应该是0,所以当四舍五入时,它是按照数学规则进行的,而不是按照允许你绕过最小停止规则的方向。 当然,我可以直接把--通过市场检查把所有级别放在10个停止级别--可以说,为了让版主通过,但我希望能妥善处理。 我必须在买入时四舍五入,在卖出时四舍五入。哦............ Sergey Gritsay 2016.04.08 16:58 #156 Vladislav Andruschenko:不幸的是,没有。在市场上,一切都应该自动进行。 现在,这里有一个关于黄金的新技巧,有3位数的报价,但最后一位数字必须是四舍五入的,即最后一位数字必须是0。 最后一个数字应该是0,所以当四舍五入时,它是按数学规则四舍五入的,而不是向允许你绕过最小止损规则的一边。 当然,我可以直接把--通过市场检查把所有级别放在10个停止级别--可以说,为了让版主通过,但我希望能妥善处理。 我必须在买入时四舍五入,卖出时四舍五入。哦............我在测试黄金和白银时也遇到过这个问题。double NormalizePrice(string symbol,double value) { double ts=SymbolInfoDouble(symbol,SYMBOL_TRADE_TICK_SIZE); if(ts==0)return(value); return(NormalizeDouble(value/ts,0)*ts); }使用实例 double ask=NormalizeDouble(SymbolInfoDouble(symbol,SYMBOL_ASK),digits); if(NormalizeDouble(NormalizePrice(symbol,ask),digits)!=ask)return; Sergey Gritsay 2016.04.08 17:09 #157 例如,这是我的获利和止损功能的样子void ModifyTP(string symbol,double tp) { if(tp<=0)return; bool res; double last=SymbolInfoDouble(symbol,SYMBOL_LAST); double bid=SymbolInfoDouble(symbol,SYMBOL_BID); double ask=SymbolInfoDouble(symbol,SYMBOL_ASK); double point=SymbolInfoDouble(symbol,SYMBOL_POINT); int digits=(int)SymbolInfoInteger(symbol,SYMBOL_DIGITS); if(last<=0.0) { bid=SymbolInfoDouble(symbol,SYMBOL_BID); ask=SymbolInfoDouble(symbol,SYMBOL_ASK); } else { bid=SymbolInfoDouble(symbol,SYMBOL_LAST); ask=SymbolInfoDouble(symbol,SYMBOL_LAST); } if(bid<=0.0)return; if(ask<=0.0)return; int total=OrdersTotal(); for(int i=0; i<total; i++) { if(!OrderSelect(i,SELECT_BY_POS))continue; if(OrderMagicNumber()!=Magic)continue; if(OrderSymbol()!=symbol)continue; if(OrderType()>1)continue; if(OrderTakeProfit()!=0)continue; if(OrderType()==OP_BUY) tp=NormalizeDouble(NormalizePrice(symbol,bid+tp*point),digits); if(OrderType()==OP_SELL) tp=NormalizeDouble(NormalizePrice(symbol,ask-tp*point),digits); if(tp<0)continue; res=OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),tp,0); if(!res) { int error=GetLastError(); rezult=StringConcatenate(OrderSymbol(),": error modifying TakeProfit order ",StrToType(OrderType())," №- ",error," ",ErrorDescription(error)," Ticket: ",OrderTicket()); Print(rezult); } } } Vladislav Andruschenko 2016.04.08 17:53 #158 Sergey Gritsay:同样面临着在黄金和白银上测试的问题,我写了一个这样的函数使用实例如果我在MT5服务器上使用黄金--小数点后3位,但止损和开盘价 应设置为!!!!如果你还想玩小数点后2位的游戏,那就四舍五入到小数点后2位,而不是3位,你还可能看到一些幽默的技巧,在黄金和白银上的最小止损。 像这样。 request.tp=NormalizeDouble(request.tp,SymbolInfoInteger(symToWork2,SYMBOL_DIGITS)-Rounding); request.sl=NormalizeDouble(request.sl,SymbolInfoInteger(symToWork2,SYMBOL_DIGITS)-Rounding); request.price=NormalizeDouble(request.price,SymbolInfoInteger(symToWork2,SYMBOL_DIGITS)-Rounding);其中四舍五入=黄金mt5是1。你需要把价格四舍五入,否则它会通知你价格是错误的,但当你四舍五入后,服务器会把它纠正为正确的价格,交易就会被关闭。mt4没有这样的怪癖--有2位小数,你四舍五入到2位小数没有任何问题。我对错误130的个人看法。我对错误130进行了所有的检查--有一个错误日志输出。还有就是正常化。在市场上,他们让我以最小的止损点为标准,分别+价差,(例如,我应该从ASK价格买入,并在BID价格检查最小的止损点)。因此,它应该是 强迫用户的,如果一个交易者使用EA并设置了例如20点的止损,那么EA应该自动覆盖50点(MinStop + Spread),这是不正确的。交易者必须看到错误的130,并在自己的风险上纠正停止。另一个选择--如果用户设置的止损低于最小值--禁止交易和修改,因为版主不允许专家顾问出现130的错误。 但禁止交易 是错误的,止损和价差是浮动的,现在低于最低限度--那么就可以了。 我不认为用市场来做这样的事情是个好主意。 IMHO:错误130应该是,用户应该从服务器上看到第130个错误,而不是从专家顾问那里看到:"你的止损点低于最低点,纠正它"。市场规则:不要错过产生错误130的专家顾问--因为检查员在止损中放了1个点--好吧,这是一个失败。 一个相同的专家顾问版本可能通过也可能不通过。 我已经发布了一个版本--一切正常,过了一段时间,我看到EA打印了很多(只是止损小于最小值的事实),我迅速纠正了它,等了一周,直到他们开始测试,再次停滞了2周,因为我再次看到某些符号上有130个错误。 Artyom Trishkin 2016.04.08 20:08 #159 Vladislav Andruschenko:在mt5服务器上的黄金--小数点后3位,但止损和开盘价 应设置为!!!!。如果你想改变黄金和白银的价格,你需要把它设置为小数点后2位,即四舍五入到小数点后2位,而不是3位,而且你的黄金和白银的最小止损也会有一个窍门。 像这样。其中四舍五入=黄金mt5是1。你需要把价格四舍五入,否则它会通知你价格不对,但当你四舍五入后,服务器会修正为正确的价格,交易会被关闭。mt4没有这样的怪癖--有2位小数,你四舍五入到2位小数没有任何问题。我对错误130的个人看法。我对错误130进行了所有的检查--有一个错误日志输出。还有就是正常化。在市场上,他们让我以最小的止损点为标准,分别+价差,(例如,我应该从ASK价格买入,并在BID价格检查最小的止损点)。因此,它应该是 强迫用户的,如果一个交易者使用EA并设置了例如20点的止损,那么EA应该自动覆盖50点(MinStop + Spread),这是不正确的。交易者必须看到错误的130,并在自己的风险上纠正停止。另一个选择--如果用户设置的止损低于最小值--禁止交易和修改,因为版主不允许专家顾问出现130的错误。 但禁止交易 是错误的,止损和价差是浮动的,现在低于最低限度--那么就可以了。 我不认为用市场来做这样的事情是个好主意。 IMHO:错误130应该是,用户应该从服务器上看到第130个错误,而不是从专家顾问那里看到:"你的止损点低于最低点,纠正它"。市场规则:不要跳过产生错误130的专家顾问--因为检查器在止损中放了1个点--嗯,这是一个失败。 一个相同的专家顾问版本可能通过也可能不通过。 我已经发布了一个版本--一切正常,过了一段时间,我看到EA打印了很多(只是止损小于最小值的事实),我迅速纠正了它,等了一周,直到他们开始检查,再次停滞了2周,因为在一些符号上又出现了130的错误。IMHO - 许多服务器信息 - 不是错误,以及返回代码。而它的目的不是要通过各种技巧来避免,而是要让专家顾问能够做出决定。这是基于服务器对他/她的行动的反应而做出的决定。否则,它将只是一个愚蠢的玩具,不允许监测市场并根据与服务器的 "通信 "纠正其行动。因此,在错误130上对主持人进行 "分面 "是矫枉过正的。我们必须深思熟虑:当专家顾问在第130个错误之后继续敲打服务器是一回事,而对其作出反应并改变其行动则是另一回事。为什么不允许我们做后者?难道仅仅是因为有人(版主)不想仔细看一下EA的工作?感觉就像看到了130--在婚姻中。EA很可能需要从服务器获得这样的响应来实现自己的逻辑,这并不重要,重要的是要直接拒绝它,而不要再去寻找。这就是它的工作原理吗? Vladislav Andruschenko 2016.04.08 20:50 #160 Artyom Trishkin:IMHO - 许多服务器信息不是一个错误,而是一个返回代码。而你需要它不是为了通过各种技巧来避免它,而是为了让专家顾问能够做出决定。这是基于服务器对他/她的行动的反应而做出的决定。否则,它将只是一个愚蠢的玩具,不允许跟随市场并在与服务器相互 "沟通 "的基础上纠正其行动。所以,"强迫 "版主犯第130个错误,是一种矫枉过正的做法。我们需要深思熟虑:如果专家顾问在第130个错误后继续敲打服务器是一回事,但它对其作出反应并改变其行动又是另一回事。为什么不允许我们做后者?难道仅仅是因为有人(版主)不想仔细看一下EA的工作?感觉就像看到130个--在婚姻中。专家可能为了自己的逻辑需要服务器的这种响应,这并不重要,重要的是直接拒绝它,不要再看下去了。这就是它的工作原理吗?这就是为什么我的EA一直在捕捉最小/最大运动,因此它不是用1个点的止损来冲击服务器,而是用正常的最小水平+点差,但点差是浮动的。因此,EA会猛击服务器,直到它返回一个正常的价差。换句话说,在打开的那一刻,它检查min stop--重建它的值--然后它击中服务器。但如果你需要设置10个点的止损,你必须等待最小点差,并击败服务器。 1...9101112131415161718 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
将点差考虑在内,点差为8点。+最小止损18=26点
27是可以的。
而且,如果一个人需要设置100个点的止损,这意味着他将损失100个点,所以对于BAY来说,从ASC价格开始,你需要计算100个点。
和来自BID的销售。
我没有说把SL放在哪里。我说过检查时要用什么价格。
所以你怎么能不猜呢?如果经纪人给出一个不合理的止损水平? %)
...很明显,在所有的检查之后,你必须猜测才能知道最小的缩进。
我没有在市场上销售EA 的经验,但在阅读了所有的意见后,我将投入我的五分钱。
你可以尝试在菜单中选择几个选项
1个变体 - 默认。这时,最小停顿完全由MODE_STOPLEVEL 决定。一定要在订单的每个动作之前要求一个新的STOPLEVEL。
2 变体,如果MODE_STOPLEVEL == 0,则止损点向左 移动。
3 可以选择,我们手动设置自己的止损水平,或一些乘数乘以价差。
有必要引入控制。如果一个EA正在被测试或优化,止损水平不能低于点差。我认为这将使市场通过任何压力测试,包括StopLoss=1的测试。
我没有在市场上销售EA 的经验,但在阅读了所有的意见后,我将投入我的五分钱。
你可以尝试在菜单中选择几个选项
1个变体 - 默认。这时,最小停顿完全由MODE_STOPLEVEL 决定。一定要在订单的每个动作之前要求一个新的STOPLEVEL。
2 变体,如果MODE_STOPLEVEL == 0,则止损点向左 移动。
3 可以选择,我们手动设置自己的止损水平,或一些乘数乘以价差。
有必要引入控制。如果一个EA正在被测试或优化,止损水平不能低于点差。我认为这将使市场通过任何压力测试,包括StopLoss=1的测试。
不幸的是,没有。
在市场上,一切都应该自动进行。
现在这里有一个关于黄金的新的有趣的事情,有3个数字,但最后一个数字必须是四舍五入的,即最后一个数字应该是0。
最后一个数字应该是0,所以当四舍五入时,它是按照数学规则进行的,而不是按照允许你绕过最小停止规则的方向。
当然,我可以直接把--通过市场检查把所有级别放在10个停止级别--可以说,为了让版主通过,但我希望能妥善处理。
我必须在买入时四舍五入,在卖出时四舍五入。哦............
不幸的是,没有。
在市场上,一切都应该自动进行。
现在,这里有一个关于黄金的新技巧,有3位数的报价,但最后一位数字必须是四舍五入的,即最后一位数字必须是0。
最后一个数字应该是0,所以当四舍五入时,它是按数学规则四舍五入的,而不是向允许你绕过最小止损规则的一边。
当然,我可以直接把--通过市场检查把所有级别放在10个停止级别--可以说,为了让版主通过,但我希望能妥善处理。
我必须在买入时四舍五入,卖出时四舍五入。哦............
我在测试黄金和白银时也遇到过这个问题。
使用实例
例如,这是我的获利和止损功能的样子
同样面临着在黄金和白银上测试的问题,我写了一个这样的函数
使用实例
如果我在MT5服务器上使用黄金--小数点后3位,但止损和开盘价 应设置为!!!!如果你还想玩小数点后2位的游戏,那就四舍五入到小数点后2位,而不是3位,你还可能看到一些幽默的技巧,在黄金和白银上的最小止损。
像这样。
其中四舍五入=黄金mt5是1。
你需要把价格四舍五入,否则它会通知你价格是错误的,但当你四舍五入后,服务器会把它纠正为正确的价格,交易就会被关闭。
mt4没有这样的怪癖--有2位小数,你四舍五入到2位小数没有任何问题。
我对错误130的个人看法。
我对错误130进行了所有的检查--有一个错误日志输出。
还有就是正常化。
在市场上,他们让我以最小的止损点为标准,分别+价差,(例如,我应该从ASK价格买入,并在BID价格检查最小的止损点)。
因此,它应该是 强迫用户的,如果一个交易者使用EA并设置了例如20点的止损,那么EA应该自动覆盖50点(MinStop + Spread),这是不正确的。交易者必须看到错误的130,并在自己的风险上纠正停止。
另一个选择--如果用户设置的止损低于最小值--禁止交易和修改,因为版主不允许专家顾问出现130的错误。
但禁止交易 是错误的,止损和价差是浮动的,现在低于最低限度--那么就可以了。
我不认为用市场来做这样的事情是个好主意。
IMHO:错误130应该是,用户应该从服务器上看到第130个错误,而不是从专家顾问那里看到:"你的止损点低于最低点,纠正它"。
市场规则:不要错过产生错误130的专家顾问--因为检查员在止损中放了1个点--好吧,这是一个失败。
一个相同的专家顾问版本可能通过也可能不通过。
我已经发布了一个版本--一切正常,过了一段时间,我看到EA打印了很多(只是止损小于最小值的事实),我迅速纠正了它,等了一周,直到他们开始测试,再次停滞了2周,因为我再次看到某些符号上有130个错误。
在mt5服务器上的黄金--小数点后3位,但止损和开盘价 应设置为!!!!。如果你想改变黄金和白银的价格,你需要把它设置为小数点后2位,即四舍五入到小数点后2位,而不是3位,而且你的黄金和白银的最小止损也会有一个窍门。
像这样。
其中四舍五入=黄金mt5是1。
你需要把价格四舍五入,否则它会通知你价格不对,但当你四舍五入后,服务器会修正为正确的价格,交易会被关闭。
mt4没有这样的怪癖--有2位小数,你四舍五入到2位小数没有任何问题。
我对错误130的个人看法。
我对错误130进行了所有的检查--有一个错误日志输出。
还有就是正常化。
在市场上,他们让我以最小的止损点为标准,分别+价差,(例如,我应该从ASK价格买入,并在BID价格检查最小的止损点)。
因此,它应该是 强迫用户的,如果一个交易者使用EA并设置了例如20点的止损,那么EA应该自动覆盖50点(MinStop + Spread),这是不正确的。交易者必须看到错误的130,并在自己的风险上纠正停止。
另一个选择--如果用户设置的止损低于最小值--禁止交易和修改,因为版主不允许专家顾问出现130的错误。
但禁止交易 是错误的,止损和价差是浮动的,现在低于最低限度--那么就可以了。
我不认为用市场来做这样的事情是个好主意。
IMHO:错误130应该是,用户应该从服务器上看到第130个错误,而不是从专家顾问那里看到:"你的止损点低于最低点,纠正它"。
市场规则:不要跳过产生错误130的专家顾问--因为检查器在止损中放了1个点--嗯,这是一个失败。
一个相同的专家顾问版本可能通过也可能不通过。
我已经发布了一个版本--一切正常,过了一段时间,我看到EA打印了很多(只是止损小于最小值的事实),我迅速纠正了它,等了一周,直到他们开始检查,再次停滞了2周,因为在一些符号上又出现了130的错误。
IMHO - 许多服务器信息 - 不是错误,以及返回代码。而它的目的不是要通过各种技巧来避免,而是要让专家顾问能够做出决定。这是基于服务器对他/她的行动的反应而做出的决定。否则,它将只是一个愚蠢的玩具,不允许监测市场并根据与服务器的 "通信 "纠正其行动。
因此,在错误130上对主持人进行 "分面 "是矫枉过正的。我们必须深思熟虑:当专家顾问在第130个错误之后继续敲打服务器是一回事,而对其作出反应并改变其行动则是另一回事。为什么不允许我们做后者?难道仅仅是因为有人(版主)不想仔细看一下EA的工作?感觉就像看到了130--在婚姻中。EA很可能需要从服务器获得这样的响应来实现自己的逻辑,这并不重要,重要的是要直接拒绝它,而不要再去寻找。这就是它的工作原理吗?
IMHO - 许多服务器信息不是一个错误,而是一个返回代码。而你需要它不是为了通过各种技巧来避免它,而是为了让专家顾问能够做出决定。这是基于服务器对他/她的行动的反应而做出的决定。否则,它将只是一个愚蠢的玩具,不允许跟随市场并在与服务器相互 "沟通 "的基础上纠正其行动。
所以,"强迫 "版主犯第130个错误,是一种矫枉过正的做法。我们需要深思熟虑:如果专家顾问在第130个错误后继续敲打服务器是一回事,但它对其作出反应并改变其行动又是另一回事。为什么不允许我们做后者?难道仅仅是因为有人(版主)不想仔细看一下EA的工作?感觉就像看到130个--在婚姻中。专家可能为了自己的逻辑需要服务器的这种响应,这并不重要,重要的是直接拒绝它,不要再看下去了。这就是它的工作原理吗?
这就是为什么我的EA一直在捕捉最小/最大运动,因此它不是用1个点的止损来冲击服务器,而是用正常的最小水平+点差,但点差是浮动的。因此,EA会猛击服务器,直到它返回一个正常的价差。
换句话说,在打开的那一刻,它检查min stop--重建它的值--然后它击中服务器。但如果你需要设置10个点的止损,你必须等待最小点差,并击败服务器。