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

 
sergeev:

使你的_地段正常化

谢谢你!这很有帮助。
 
你好!我有一个关于将数据导出到Excel的问题。我需要该指标(或脚本)在每天开始时自动将 "余额"、"资金 "等的当前值导出到Excel。你能告诉我如何实现这一点吗?或者至少在哪里可以读到相关信息。搜索没有带来任何结果,所以我在这里问。 谢谢你。
 
Gerkl:
你好!我有一个关于将数据导出到Excel的问题。我需要该指标(或脚本)在每天开始时自动将 "余额"、"资金 "等的当前值导出到Excel。你能告诉我如何实现这一点吗?或者至少在哪里可以读到相关信息。搜索没有产生任何结果,所以我在这里问。 谢谢你。
你可以用Expert保存一个csv文件,Excel会很成功地处理它。
 
splxgf:
你可以用专家保存一个csv文件,Excel会很成功地处理它。
你能告诉我如何做到这一点吗?以及在哪里可以了解到更多信息。 谢谢你。
 
Gerkl:
你能告诉我如何做到这一点吗?我在哪里可以找到更多关于它的信息呢? 谢谢你。
https://docs.mql4.com/ru/files
 

请教如何使EA中的指标 不被画在图表上?

也就是说,指标的线条不会被画在图表上。该指标是这样调用的。

indikator_1=iMA(NULL,60,maTrendPeriodv_1,0,MODE_SMA,PRICE_CLOSE,0);
 
谢谢你。虽然这并没有告诉我什么,但会加以研究。
 
belck:

请教如何使EA中的指标不被画在图表上?

也就是说,指标的线条不会被画在图表上。该指标是这样调用的。

indikator_1=iMA(NULL,60,maTrendPeriodv_1,0,MODE_SMA,PRICE_CLOSE,0);
除非你自己把它放在图表上,否则当EA运行时,它将不会被反映出来。你是如何做到这一点的?
 

在测试EA的过程中,我得到错误130--错误的停止。在NewOrder函数中,应该传递外部变量TakeProfit和StopLoss,在我看来,我已经做了一切来实现这一点,但正如打印显示的那样,传递的是零。我明白这个错误的原因在于此,但我还没能找到它。我需要你的帮助。

外来int TakeProfit=100。
外来的int StopLoss=100。

....................................

如果(KVADRAT==1)
{
double Lot=GetLot(MaxRisk);
Print("Lot=",Lot);
如果(Lot==0)
{
Print("not enough funds");
return(0);
}
NewOrder(OP_BUYSTOP, Lot, TakeProfit, StopLoss)。
NewOrder(OP_SELLSTOP, Lot, TakeProfit, StopLoss)。
KVADRAT=0。
}

.....................................

//+---------Функция расчета лота---------------------------------------+
double GetLot(int Risk)
{
double Free=AccountFreeMargin()。
double One_Lot=MarketInfo(Symbol(),MODE_MARGINREQUIRED)。
double Min_Lot=MarketInfo(Symbol(),MODE_MINLOT)。
double Max_Lot=MarketInfo(Symbol(),MODE_MAXLOT)。
double Step=MarketInfo(Symbol(),MODE_LOTSTEP)。
double Lot=MathFloor(Free*Risk/100/One_Lot/Step)*Step。
如果(Lot<Min_Lot)Lot=Min_Lot。
如果(Lot>Max_Lot)Lot=Max_Lot。
如果(Lot*One_Lot>Free)返回(0.0)。
return(Lot)。
}

//+----------Функция открытия ордера-----------------------------------+
int NewOrder(int Cmd,double Lot,int TakeProfit,int StopLoss)
{
双重TP=0;//获取利润
double SL=0;// stopLoss
双重PR=0;//价格
while(!IsTradeAllowed())Sleep(100)。
如果(TakeProfit<MarketInfo(Symbol(),MODE_STOPLEVEL))
TakeProfit=MarketInfo(Symbol(),MODE_STOPLEVEL)。
如果(StopLoss<MarketInfo(Symbol(),MODE_STOPLEVEL))
StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL)。
如果(Cmd==OP_BUY)
{
PR=NormalizeDouble(Ask,Digits)。
如果(TakeProfit>0)TP=NormalizeDouble(Ask+TakeProfit*Point,Digits)。
如果(StopLoss>0)SL=NormalizeDouble(Bid-StopLoss*Point,Digits)。
}
如果(Cmd==OP_SELL)
{
PR=NormalizeDouble(Bid,Digits)。
如果(TakeProfit>0)TP=NormalizeDouble(Bid-TakeProfit*Point,Digits)。
如果(StopLoss>0)SL=NormalizeDouble(Ask+StopLoss*Point,Digits)。
}
Print("TakeProfit=",TakeProfit," StopLoss=",StopLoss," StopLevel=",MarketInfo(Symbol(),MODE_STOPLEVEL))。
tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,0,CLR_NONE) 。
if(tic<0)Print("order open error:",GetLastError()); Print("Cmd-",Cmd, "Lot=",Lot, "PR=",PR, "SL=",SL, "TP=",TP) 。
return(tic)。
}

 
DhP:
用这个函数做一些魔术。

*去做魔术 *