[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 363

 
这个按钮是什么?
 
Pr0t0tip:

你好。我已经写了一个简单的EA(试图自己学习)。机器人只打开交易卖出,但不想买入。我明白我没有正确地拼写购买条件或没有正确地划分它们。我在请求帮助。在这里,它是。

外来的int tp=100。

外来的int sl=100。

外部int H=14。

外来的int M=00。

双重的ma1,ma2。

int start()

{

ma1=iMA(NULL,0,18,0,MODE_SMA,PRICE_CLOSE,0)。

ma2=iMA(NULL,0,36,0,MODE_SMA,PRICE_CLOSE,0)。

如果(OrdersTotal ()==0 &&iStochastic (NULL,0,50,30,3,0,1,MODE_MAIN,4)<iStochastic (NULL,0,50,30,3,0,1,MODE_SIGNAL,4) &&ma1<ma2)

OrderSend ("EURUSD", OP_SELL,0.1,Bid,0,Ask+sl*Point,Ask-tp*Point,",123,Red) 。

if (OrdersTotal ()==0 &&iStochastic (NULL,0,50,30,3,0,1,MODE_MAIN,4)>iStochastic (NULL,0,50,30,3,0,1,MODE_SIGNAL,4) &&ma1>ma2)

OrderSend ("EURUSD", OP_BUY,0.1,Ask,0,Bid+sl*Point,Bid-tp*Point,",123,Red);

}

返回(0)。

好吧,看--一目了然--就在这条线上。

OrderSend ("EURUSD", OP_BUY,0.1,Ask,0,Bid+sl*Point,Bid-tp*Point,"",123,Red);

你,就像做空一样,在买入价+sl的基础上加上止损,在买入价-tp的基础上减去获利。而相反,你需要从买入价中减去SL--用于止损,并在买入价中加上TP--用于盈利。

OrderSend ("EURUSD", OP_BUY,0.1,Ask,0,Bid-sl*Point,Bid+tp*Point,"",123,Red);

我认为这应该是可行的。试试吧。

你可以看到,当使用SRC 插入的时候,代码是多么的漂亮和容易阅读。

 
Pr0t0tip:
这个按钮是什么?
这是你在盒子里写文字的地方,在顶部有一些按钮,你用来制作文字。其中一个是SRC按钮。它就在相机旁边。
 
谢谢你,这一切都解决了。只有顾问在浇灌,但这不是现阶段的主要问题。
 
Dimka-novitsek:

优化的含义是什么?与测试器中的机器人一起,进行优化。

你能告诉我'(' - 不兼容的类型 C:\Documents and Settings\User\My Documents\FxClub\TeleTRADE\experts\Constructor.mq4(68, 39)是什么意思?
相对返回(errorcomment);?

我不太明白--它是一个问题还是一个答案?

我打算跳过第一行,因为它根本就不太清楚。

而关于第2点(如果它是一个问题的话)--它在发誓,括号类型是不兼容的。也许,在某处的括号是圆的,而不是方的(或卷曲的)。

 

日安!请帮助

我想写一个函数,根据Bid价格返回所开仓位 的类型。

如果一定量的Bid价格不断上升--输入Bcu,反之亦然。

我自己也试过,但它总是返回0。

//+----------------------------------------------------------------------------+ 
//|  Описание : Возвращает тип открываемой позиции.                            |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|                                                                            |
//|                                                                            |
//|  Глобальные переменные:     NAME_OP - тип открываемой позиции              |
//|                             BID[]   - массив цены BID                      |
//+----------------------------------------------------------------------------+
int NamePositions(string sy="") 
{
int Kol_Tikov=6;
ArrayResize(BID,Kol_Tikov);
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
   if (sy=="0") sy=Symbol();
   {
   for(int i=Kol_Tikov-1;i>0;i--)
         BID[i]=BID[i-1];
         BID[0]=NormalizeDouble(MarketInfo(sy,MODE_BID),5);
         
         if (BID[3]>BID[2] && BID[2]>BID[1]) NAME_OP=OP_SELL;
         if (BID[3]<BID[2] && BID[2]<BID[1]) NAME_OP=OP_BUY;
   }
   return(NAME_OP);
}
 
NICK_R:

日安!请帮助

我想写一个函数,根据Bid价格返回所开仓位的类型。

如果一定量的Bid价格不断上升--输入Bcu,反之亦然。

我自己也试过,但它总是返回0。


 

以前是这样的:在测试器中,你勾选OPTIMIZE,就会出现一个窗口,里面有你所有的外部变量。你指定最小、最大和步骤。

现在我勾选了这个方框......但什么也没有发生。

你能告诉我参数和间距窗口在哪里吗?

 
lottamer:

以前是这样的:在测试器中,你勾选OPTIMIZE,就会出现一个窗口,里面有你所有的外部变量。你指定最小、最大和步骤。

但现在我勾选了这个方框......却没有任何反应。

你能告诉我参数和间距窗口在哪里吗?

当在测试器中,进入EA设置--有4个栏目。第1栏是在没有优化的情况下就能工作的内容。第2列是优化的初始参数,第3列是步骤,第4列是优化的结束。
 
Chiripaha:
当在测试器中,进入EA设置--有4个栏目。第1栏是不经优化就能工作的内容。第二列是优化的初始参数,第三列是步骤,第四列是优化结束。


我在测试器中只看到EXPERT PROPERTIES。我没有看到专家顾问的设置。他们在哪里?

财产中没有这样的东西。