[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 158

 
Xaoss1990:

帮助,请...我已经挣扎了好几天....

代码在哪里?我怎样才能提供帮助?
 
Roger:
代码在哪里?我能提供什么帮助?

这里是我们做交易的代码的一部分。

//+
//+----------------------关闭一个点---------------------+
//+------------------------------------------------------------------+
if (POINT_BUY_M15 >= Strgh_UP_M15 &&& POINT_BUY_H1 >= Strgh_UP_H1 && POINT_BUY_H4 >= Strgh_UP_H4 && OrdersTotal() == 0)
{
ticket = OrderSend(Symbol(, OP_BUY, lots, Ask, 5, 0, 0, "我的订单#", 111, 0, Blue);
if(ticket < 0)
{
Print("订单未设置。错误 - #",GetLastError());
return(0);
}
}

//+------------------------------------------------------------------+
//+-------------------------СТАВИМ СПОП ЛОСС-------------------------+
//+------------------------------------------------------------------+
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);
Magic = OrderMagicNumber();

if (POINT_BUY_M15 < Strgh_UP_M15 || POINT_BUY_H1 < Strgh_UP_H1 || POINT_BUY_H4 < Strgh_UP_H4 && OrdersTotal( ) == 1 && Magic == 111 && OrderType( ) == 0)
{
close = 1;
}
if (close == 1)
{
if (OrderClose(OrderTicket(), lots, Bid, 5, Yellow) == true) Alert("OrderTicket() = ", OrderTicket(), " , lots = " , lots, " , Bid = " , Bid);
else Print ("Stop not set;)

}

//+------------------------------------------------------------------+
//+----------------------CONCLAIM SALE---------------------+
//+------------------------------------------------------------------+
if (POINT_SELL_M15 >= Strgh_DOWN_M15 && POINT_SELL_H1 >= Strgh_DOWN_H1 && POINT_SELL_H4 >= Strgh_DOWN_H4 && OrdersTotal() == 0)
{
ticket = OrderSend(Symbol(), OP_SELL, lots, Bid, 5, 0, 0, "My order #", 222, 0, Green);
if(ticket < 0)
{
Print("Order not set.错误 - #",GetLastError());
return(0);
}
}
//------------------------------------------------ 打印参数选择----------------------------------------------------
//打印("Sell M15 = ", POINT_SELL_M15, ", Sell H1 = ", POINT_SELL_H1, ", Sell H4 = ", POINT_SELL_H4, ", 订单号 = ", ticket);
//------------------------------------------------Печать параметров на выбор----------------------------------------------------

//+------------------------------------------------------------------+
//+-------------------------СТАВИМ СПОП ЛОСС-------------------------+
//+------------------------------------------------------------------+
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);
Magic = OrderMagicNumber();

if (POINT_SELL_M15 < Strgh_DOWN_M15 || POINT_SELL_H1 < Strgh_DOWN_H1 || POINT_SELL_H4 < Strgh_DOWN_H4 && OrdersTotal( ) == 1 && Magic == 222 && OrderType( ) == 1)
{
close = 1;
}
如果(close == 1)
{
OrderClose(OrderTicket(, lots, Ask, 5, Red);
}

 
这不是代码中可能出现错误的部分。
 
Roger:
这不是代码中可能出现错误的部分。 。

em....剩下的代码是计算值(POINT_BUY_M15, POINT_BUY_H, POINT_BUY_H4, POINT_SELL_M15, POINT_SELL_H, POINT_SELL_H4)来进行交易,它工作正常...我检查了。这很简单....

 
如果错误发生在这里,日志会说 "没有设置停止",但情况并非如此。
 
请告知。一个订单由某个条件打开,并由拖网关闭。如果条件是真实的,如何使一个头寸 在这个蜡烛上不再被打开
 

正在检查init函数中的一个条件。

...
extern int proc_zahlest=50;

int init() 
{
if (proc_zahlest>100)
{
Alert("Параметр proc_zahlest д.б. <100% !!!");
}
return(0);
}

如果proc_zahlest>100,如何停止指标的运行(防止启动函数运行)。

 
prom18:
请告知。一个订单由某个条件打开,并由拖网关闭。如果条件是真的,我怎样才能使一个头寸在这个蜡烛上不再被打开。


如果只能开出一个订单,就很容易

start()
{
static int newbar;
if(newbar==Time[0])return(0);
if(OrdersTotal()>0)newbar=Time[0];
...
 
Roger:


如果只能开出一个订单,就很容易

请用文字解释所写的逻辑。
 
prom18:
请用文字解释所写的逻辑。

当一个订单被打开时,newbar变量被分配为当前柱状体打开时间 的值。在接下来的点位上,直到新的条形图,该EA将被封锁。如果订单还没有被关闭,则操作会重复。就这样,我们一直在做,直到订单结束。然后在下一个条形图上,专家顾问已经准备好迎接新的开盘。