[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 161 1...154155156157158159160161162163164165166167168...432 新评论 [Deleted] 2013.02.16 06:29 #1601 出现了以下情况:策略测试器 没有关闭TakeProfit头寸。交易是在TF日进行的,我看了看亏损交易的较小的TF--价格下降/上升的幅度超过了触发止盈的要求,但交易没有关闭,当价格达到止损时,那么损失就固定了。我甚至尝试过可视化--价格刚刚通过TakeProfit,就这样了。而有时一切都很顺利,有时会出现这样的事情。就在昨天,一切都很好,但今天我运行测试器,得到的结果是完全没有性能。我试着重新安装终端--但没有帮助。我不确定我是否租用了不同的经纪公司。 Alekseu Fedotov 2013.02.16 08:43 #1602 beginner666999: 出现了以下情况:Strategy Tester没有通过TakeProfit关闭头寸。交易是在TF日进行的,我看了看亏损交易的小TF--价格下跌/上涨超过了触发止盈的要求水平,但交易没有关闭,当价格达到止损时,损失就固定了。我甚至尝试过可视化--价格刚刚通过TakeProfit,就这样了。而有时一切都很顺利,有时会出现这样的事情。就在昨天,一切都很好,但今天我运行测试器,得到的性能完全丧失。我试着重新安装终端--但没有帮助。我不确定我是否会使用另一家经纪公司。这都是为了传播,是为了周末的增加。它是这样的。 [Deleted] 2013.02.16 10:17 #1603 r772ra:这都是为了传播,是为了周末的增加。它是这样的。 谢谢你!我等着平日里去看看吧。 [Deleted] 2013.02.16 10:20 #1604 r772ra:这都是为了传播,是为了周末的增加。它是这样的。 你一定是个白痴--我在经纪人的网站上看了我的工具的点差,很惊讶--11个点!我的工具的点差 是多少?再次感谢! [Deleted] 2013.02.16 10:49 #1605 然后是另一个问题,稍微偏离主题。为什么他们在周末会加大价差?毕竟,反正没有交易。 Victor Nikolaev 2013.02.16 11:15 #1606 Konstebl:请告知如何正确指定条件。 如果有一个未平仓的BUY订单,如果它处于盈亏平衡点,那么我们设置BUYSTOP。static bool flag ;如果(NewBar())flag = true。for(i=0;i<total;i++){OrderSelect(i,SELECT_BY_POS,MODE_TRADES)。如果(OrderSymbol()==Symbol() && OrderMagicNumber() ==123){如果(OrderType()==OP_BUY){如果(OrderStopLoss()>OrderOpenPrice()){如果(Ask>m && frUP>0 && flag){价格=归一化双倍数(frUP+(Ask-Bid)+30*Point,Digits)。takeprofit = NormalizeDouble(price+tp*Point,Digits)。ticket = OrderSend(Symbol(),OP_BUYSTOP,Lots,price,5,Bid-sl*Point,takeprofit, "Fractal",123,TimeCurrent()+72000,Blue)。如果(ticket>0)flag = false。否则Print("Error",GetLastError())。}}}}}不起作用!!!。 你有没有试过按照逻辑来放括号?因为到目前为止还没有。所写的内容意味着至少有一个职位是开放的。否则它就不会打开任何新的。 Konstantin Drozdov 2013.02.16 13:07 #1607 Vinin: 你有没有试过按照逻辑来放大括号?因为到目前为止还没有。所写的内容意味着至少有一个职位是开放的。否则,将不会有新的开张 那你怎么安排它们呢? 我又写了一点代码。 if(NewBar()) flag = true; for(i=0;i<total;i++) { OrderSelect(i,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol() && OrderMagicNumber()==123) { if(OrderType()==OP_BUY || OrderType()<=OP_BUYSTOP) { if(OrderStopLoss()>OrderOpenPrice()) { if(Ask>m && frUP>0 && flag) { price = NormalizeDouble(frUP+(Ask-Bid)+30*Point,Digits); takeprofit = NormalizeDouble(price+tp*Point,Digits); ticket = OrderSend(Symbol(),OP_BUYSTOP,Lots,price,5,Bid-sl*Point,takeprofit,"Fractal",123,TimeCurrent()+72000,Blue); if(ticket>0) flag = false; else Print("Ошибка ",GetLastError()); } } } } } По идее должно работать,но не хочет. Alekseu Fedotov 2013.02.16 13:18 #1608 beginner666999: 然后是另一个问题,稍微偏离主题。为什么他们在周末会加大价差?反正他们不做交易。 不,不是在周末,我没有写对,价差停留在终端的最后一个报价上,来的时候是这样的因此,你 在白天关闭终端,星期五。而你在周末进行测试。 [Deleted] 2013.02.16 13:42 #1609 r772ra:不,不是在周末,我没有写对,价差停留在终端的最后一个报价上,来的时候是这样的因此,你在白天关闭终端,星期五。而你在周末进行测试。 明白了,谢谢!这样一来就更有意义了。 Victor Nikolaev 2013.02.16 15:34 #1610 Konstebl: 那我该如何安排它们呢? 我加了一点代码。 好吧,一点点的逻辑if(NewBar()) flag = true; for(i=0;i<total;i++) { OrderSelect(i,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol() && OrderMagicNumber()==123) { if(OrderType()==OP_BUY || OrderType()<=OP_BUYSTOP) { if(OrderStopLoss()>OrderOpenPrice()) { if(Ask>m && frUP>0 && flag) { price = NormalizeDouble(frUP+(Ask-Bid)+30*Point,Digits); takeprofit = NormalizeDouble(price+tp*Point,Digits); ticket = OrderSend(Symbol(),OP_BUYSTOP,Lots,price,5,Bid-sl*Point,takeprofit,"Fractal",123,TimeCurrent()+72000,Blue); if(ticket>0) flag = false; else Print("Ошибка ",GetLastError()); } } } } }无论条件如何,循环都会被执行 if(NewBar()) 1...154155156157158159160161162163164165166167168...432 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
出现了以下情况:Strategy Tester没有通过TakeProfit关闭头寸。交易是在TF日进行的,我看了看亏损交易的小TF--价格下跌/上涨超过了触发止盈的要求水平,但交易没有关闭,当价格达到止损时,损失就固定了。我甚至尝试过可视化--价格刚刚通过TakeProfit,就这样了。而有时一切都很顺利,有时会出现这样的事情。就在昨天,一切都很好,但今天我运行测试器,得到的性能完全丧失。我试着重新安装终端--但没有帮助。我不确定我是否会使用另一家经纪公司。
这都是为了传播,是为了周末的增加。
它是这样的。
这都是为了传播,是为了周末的增加。
它是这样的。
谢谢你!我等着平日里去看看吧。
这都是为了传播,是为了周末的增加。
它是这样的。
你一定是个白痴--我在经纪人的网站上看了我的工具的点差,很惊讶--11个点!我的工具的点差 是多少?再次感谢!
请告知如何正确指定条件。 如果有一个未平仓的BUY订单,如果它处于盈亏平衡点,那么我们设置BUYSTOP。
static bool flag ;
如果(NewBar())
flag = true。
for(i=0;i<total;i++)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES)。
如果(OrderSymbol()==Symbol() && OrderMagicNumber() ==123)
{
如果(OrderType()==OP_BUY)
{
如果(OrderStopLoss()>OrderOpenPrice())
{
如果(Ask>m && frUP>0 && flag)
{
价格=归一化双倍数(frUP+(Ask-Bid)+30*Point,Digits)。
takeprofit = NormalizeDouble(price+tp*Point,Digits)。
ticket = OrderSend(Symbol(),OP_BUYSTOP,Lots,price,5,Bid-sl*Point,takeprofit, "Fractal",123,TimeCurrent()+72000,Blue)。
如果(ticket>0)
flag = false。
否则
Print("Error",GetLastError())。
}
}
}
}
}
不起作用!!!。
你有没有试过按照逻辑来放括号?因为到目前为止还没有。
所写的内容意味着至少有一个职位是开放的。否则它就不会打开任何新的。
你有没有试过按照逻辑来放大括号?因为到目前为止还没有。
所写的内容意味着至少有一个职位是开放的。否则,将不会有新的开张
那你怎么安排它们呢? 我又写了一点代码。
然后是另一个问题,稍微偏离主题。为什么他们在周末会加大价差?反正他们不做交易。
不,不是在周末,我没有写对,价差停留在终端的最后一个报价上,来的时候是这样的
因此,你 在白天关闭终端,星期五。而你在周末进行测试。
不,不是在周末,我没有写对,价差停留在终端的最后一个报价上,来的时候是这样的
因此,你在白天关闭终端,星期五。而你在周末进行测试。
明白了,谢谢!这样一来就更有意义了。
那我该如何安排它们呢? 我加了一点代码。
好吧,一点点的逻辑
无论条件如何,循环都会被执行 if(NewBar())