[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 510

 
Dimka-novitsek:

晚上好!我被难住了。我在测试器中开了两个订单,一个是有takeprofit的,另一个根本没有。

他们都是一次就拿下了利润!!!!

我在测试器中已经经过这个地方八次了。我无法理解!


看起来像一个克隆的替身!在演示中尝试!以后再告诉我们吧!

因此,请看,SL触发的地方是损失,TP触发的地方是利润。这就对了!

看看日志上怎么说的?所以,要一步一步地追踪所有的行动!

只有在测试器中才会有双打在演示上,更有甚者,在Real上会有1个,而第二个则不会通过,会有很多的错误!"。

 
hoz:
问题是这样的。如果我想下一个限价挂单,它将在日线开盘时准确触发,即TF D1上的柱子。我应该如何实施?我不太理解这种逻辑。毕竟,我需要的不是一个简单的限制器,而是一个能在某一特定时间,即在一天中的一个新柱状体 开盘时精确工作的限制器。
首先,用术语来决定--"将在某个时间准确触发的限价"--"限价触发 "是什么意思? 你越是解释这个神奇的过程--就越容易在现实生活中实施它。 以防万一,阅读一下挂单 的内容。
 
Dimka-novitsek:

晚上好!我被难住了。我在测试器中开了两个订单,一个是有takeprofit的,另一个根本没有。

他们都是一次就拿下了利润!!!!

我在测试器中已经经过这个地方八次了。我无法理解!

也许你可以分享一个秘密--"为什么要创建一个公开订单的克隆?你不能用较大的手数开一个订单吗?;)
 
这是一种策略。我现在可能会把它截图下来。哦,我哥哥来了,我赶不上了。不过,这是一个奇怪的情况。
 
像这样比较日期时间格式是否正确?
datetime t=OrderCloseTime();
             datetime t1=Time[1];
             datetime t0=Time[0];
             if(t1>=t&&t<t0){
               p++;
             }
 
Dimka-novitsek:
这是一项战略。我现在可能会把它截图下来。哦,我哥哥来了,我赶不上了。这是个奇怪的情况。

当迪曼,你能使用个人的CAMPAIGN吗?)

你在现实世界的一年中赚到钱了吗?这就像分配给你的START金额,不是吗?)

 
TarasBY:
首先,定义术语--"将在某一时刻准确触发的极限"--"极限被触发 "是什么意思?而你对这个神奇的过程给出的细节越多--在现实生活中实施起来就越容易。


是的,我说错了。我的意思是,基本上。如果这里很清楚的话,钟摆只放在价格上。

下面是代码。

//+------------------------------------------------------------------+
//|                                                       2 Days.mq4 |
//|                                                              hoz |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "hoz"
#property link      ""

extern string    A1 = "Объем сделки. Если i_lots = 0, то считается в процентах";
extern double    i_lots = 0.1;
extern string    A2 = "Управление рисками";
extern double    i_sl = 15,
                 i_tp = 10;
extern int  slippage,
            price_b,
            price_a;

extern string    Z1 = "=== Прочие настройки ===";
extern string    i_openOrderSound = "ok.wav";
extern int       i_magicNumber = 400021;

double firstBarClosed,
       secondBarClosed;
 
// Идентификаторы типов сигналов
#define SIGNAL_BUY              1                     // Сигнал на покупку
#define SIGNAL_SELL            -1                     // Сигнал на продажу
#define SIGNAL_NO               0                     // Нет сигнала

#include <stderror.mqh>

int init()
{
   
   return(0);
}
//+------------------------------------------------------------------+
int deinit()
{
   return(0);
}
//+------------------------------------------------------------------+
//+-------------------------------------------------------------------------------------+
//| Получение рыночных данных                                                           |
//+-------------------------------------------------------------------------------------+
//FindOrders()
//+-------------------------------------------------------------------------------------+
//| Получение рыночных данных                                                           |
//+-------------------------------------------------------------------------------------+
void GetMarketInfo()
{
  price_b = MarketInfo(Symbol(),MODE_BID);
  price_a = MarketInfo(Symbol(),MODE_ASK);
}
//+-------------------------------------------------------------------------------------+
//| Открытие позиций                                                                    |
//+-------------------------------------------------------------------------------------+
bool Trade(int signal, double& priceForBuy, double& priceForSell)
{
 // FindOrders();
  priceForBuy = NormalizeDouble(priceForBuy,Digits);
  priceForSell = NormalizeDouble(priceForSell,Digits);
  
  if(!IsTesting())
     GetMarketInfo();
     
  if (signal == SIGNAL_BUY)
     if (!OrderSend(Symbol(),OP_BUYLIMIT, i_lots,priceForBuy,slippage,i_sl,i_tp,"",i_magicNumber,3))
     return(false);
     
  if (signal == SIGNAL_SELL)
     if (!OrderSend(Symbol(),OP_SELLLIMIT,i_lots,priceForSell,slippage,i_sl,i_tp,"",i_magicNumber,3))
     return(false);
     
  return(true);
}
//+-------------------------------------------------------------------------------------+
//| Получение цены входа в покупку или в продажу                                        |
//+-------------------------------------------------------------------------------------+
double GetPriceToInput()
{
  firstBarClosed = iClose(Symbol(),1440,2);
  secondBarClosed = iClose(Symbol(),1440,1);
    
  {
    double deltaForSell = (firstBarClosed - secondBarClosed)/2;
    double priceForSell = secondBarClosed - deltaForSell;
    
    return(priceForSell);
  }  

  {
    double deltaForBuy = (secondBarClosed - firstBarClosed)/2;
    double priceForBuy = secondBarClosed + deltaForBuy;  
    return(priceForBuy);
  }
}
//+-------------------------------------------------------------------------------------+
//| Генерация сигнала закрытия, покупки или продажи                                     |
//+-------------------------------------------------------------------------------------+
int GetSignal()
{
  if(firstBarClosed > secondBarClosed)
  return(SIGNAL_BUY);

  if(firstBarClosed < secondBarClosed)
  return(SIGNAL_NO);
}
//+-------------------------------------------------------------------------------------+
//| Функция Start                                                                       |
//+-------------------------------------------------------------------------------------+
int start()
{
  int signal = GetSignal();
    
    if (signal != SIGNAL_NO)
      if(!Trade(signal, priceForBuy, priceForSell))
      return(0);

  return(0);
}


事实上,这个问题并不十分复杂。我在Trade(int signal, double& priceForBuy, double& priceForSell) 函数中传递了正式参数 priceForBuypriceForSell 。参数是由链接传递的。不是这样做的吗?这些功能是局部的,不是全局的。

编译过程中发生了一个错误。

'priceForBuy' - variable not defined    E:\Insall'd soft's\Forex\Admiral Markets\experts\2 Days.mq4 (117, 25)
'priceForSell' - variable not defined   E:\Insall'd soft's\Forex\Admiral Markets\experts\2 Days.mq4 (117, 38)

错误是从哪里来的?我已经在函数GetPriceToInput() 中定义了这些参数。

 
椒盐饼和后双的作用是什么(说实话,我不知道)
 
YOUNGA:

,椒盐卷饼和双份之后是什么呢

这是对想要通过引用传递参数的痴迷。:-)

 
Roman.:

这是对想要通过引用传递参数的痴迷。:-)



还能怎样?同样的事情要计算100次?