voidOnTick()
{
datetime EaStartTime = StringToTime(StartTime); // время начала работы советникаdatetime EaEndTime = StringToTime(EndTime); // время окончания работы советникаdatetime CurrTime = TimeCurrent(); // это если нужно взять время терминалаif (CurrTime < EaStartTime || CurrTime >= EaEndTime)
return; // если еще не время торговать - выход
{
PriceLow=iEnvelopes(NULL,0,MA_Period,MA_Shift,MA_Method,Applied_Price,Deviation,0,1);
PriceHigh =iEnvelopes(NULL,0,MA_Period,MA_Shift,MA_Method,Applied_Price,Deviation,1,1);
MacdCurrent=iMACD(NULL,0,InpFastEMA,InpSlowEMA,InpSignalSMA,PRICE_CLOSE,MODE_MAIN,0);
SignalCurrent=iMACD(NULL,0,InpFastEMA,InpSlowEMA,InpSignalSMA,PRICE_CLOSE,MODE_SIGNAL,0);
SignalMAPrevious=iMA(NULL,0,InpMAPeriod,InpMAShift,InpMAMethod,PRICE_MEDIAN,1);
SignalMAThis=iMA(NULL,0,InpMAPeriod,InpMAShift,InpMAMethod,PRICE_MEDIAN,0);
PriceCurrentOpen=iOpen(NULL,0,1);
PriceCurrentClose=iClose(NULL,0,1);
if (CountTrades()==0) CheckForOpen();
else
{
if(CountTrades()<max_trades) CheckForOpen();
}
}
}
void CheckForOpen()
{
//-----Ставим ордер на покупку.if(PriceCurrentOpen<PriceLow&&PriceCurrentOpen<PriceCurrentClose&&SignalCurrent<MacdCurrent&&SignalMAPrevious<SignalMAThis)
{
ticket=OrderSend(NULL,OP_BUY,Lots,Ask,slippage,0,0,"5",magic,0,Blue);
if(ticket>0)
return;
}
//-----Ставим ордер на продажу.if(PriceCurrentOpen>PriceLow&&PriceCurrentOpen>PriceCurrentClose&&SignalCurrent>MacdCurrent&&SignalMAPrevious>SignalMAThis)
{
ticket=OrderSend(NULL,OP_SELL,Lots,Bid,slippage,0,0,"5",magic,0,Red);
if(ticket>0)
return;
}
}
弗拉基米尔,感谢你的耐心和帮助!你是谁?
真的在代码中犯了一个错误......
我以后会更加小心。
下午好。
请告知如何解决这个问题。当试图用SendFTP() 发送一个文件时,出现了4014错误--系统函数不允许被调用。
FTP设置是确定的--报告和测试文件被发送。
预先感谢你。
下午好。
请告知如何解决这个问题。当试图用SendFTP() 发送一个文件时,出现了4014错误--系统函数不允许被调用。
FTP设置是确定的--报告和测试文件被发送。
预先感谢你。
你是否试图从一个指标中发送?
意外的是...为什么你不能?
不可能,因为在ftp网络延迟的情况下,该指标可能会拖慢整个终端。但从EA来看,我们欢迎你这样做。
大家好。我正在写我的第一个EA,我面临着一个我无法赢得的问题。
我的EA应该给出一个买入和卖出的信号,如果前一个柱子是在通道"包络 " 之外打开的,如果是在通道之上,则卖出,如果是在通道之下,则买入,但事实上,它总是在它觉得合适的时候发送订单,它可能在通道内做多,突然开始买入订单,尽管其他条件都很好,如果卖出信号,则买入。
如何让他每条街买一个订单,而不是一下子允许每秒钟的订单数量?
大家好。我正在写我的第一个EA,我面临着一个我无法赢得的问题。
我的EA应该给出一个买入和卖出的信号,如果前一个柱子是在通道"包络 " 之外打开的,如果是在通道之上,则卖出,如果是在通道之下,则买入,但事实上,它总是在它觉得合适的时候发送订单,它可能在通道内做多,突然开始买入订单,尽管其他条件都很好,如果卖出信号,则买入。
如何让他每条街买一个订单,而不是一下子允许每秒钟的订单数量?
直到昨天,我每个人都有一个订单,虽然有一个订单,但下一个订单不会打开。如何使我的EA在前一个条形图在通道上方(下方)打开时,根据订单打开?现 在,大多数订单都在流失,因为它们没有按照条件打开。