来自一个 "傻瓜 "的问题 - 页 208

 
talliy: 你能告诉我如何使一个变量在某个条件发生时只取一个值,而不是在条件持续期间取值吗?
你能给我更多细节吗?"而不是在病情持续期间 "这句话并不清楚。
 
Yedelkin:
细节方面呢?"不是在病情持续期间 "这句话并不清楚。
例如,在找到某个酒吧时。数组中的这一栏是,比如说,第三栏。虽然这个酒吧是可变真理中的第三个酒吧。根据时间框架,它是第三个。我们将需要在日志中对此进行记录。随着每一次打勾,记录的数量会增加,直到变成第四条。因此,问题是如何对变量的真值进行一次性赋值,并一次性满足进一步的条件,但在变量拥有真值之前,不需要每次打勾。
 
上午好,请指教。我在你的网站上注册了一个信号。但我不太清楚它是怎么来的?以及将如何执行?也许我应该在MT4中做一些设置,或者只需要我的订阅,我的账号 和经纪人服务器就可以复制交易?如果我的电脑被关掉了怎么办?这些是问题。
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете - Документация по MQL5
 
talliy:
例如,在找到某个酒吧时。数组中的这一栏是说第三栏。只要这个酒吧是可变真理中的第三个。根据时间框架,它是第三个。我们将需要在日志中做一个记录。随着每一次打勾,记录的数量会增加,直到变成第四条。因此,这里有一个问题,如何同时进行变量真值的分配和同时满足进一步的条件,而不是每一次打勾,直到变量有真值。
也许你的意思是,不是在每一个刻度线上确定你需要的条形图的数量,而是只有当一个新的条形图 出现时才确定?请看这里 或在论坛上搜索IsNewBar这个词的组合。
 
talliy: 例如,当发现某个酒吧。数组中的这一栏是说第三栏。只要这根柱子是第三根,变量就是真的。根据时间框架,它是第三个。这必须记入日记。随着每一次打勾,记录的数量会增加,直到变成第四条。因此,问题是如何对变量的真实性进行一次性赋值,并一次性满足进一步的条件,但在变量为真之前,不需要每次打勾。

或者,输入另一个变量,如果第一个变量被送去打印,你将为其赋值为true。

bool bar_printed=false;
...
if()                     //Проверяете нужное условие
  {
   ...
   if(!bar_printed)
     {
      Print("Нужное условие выполнено");
      bar_printed=true;
     }
  }
 

你好,亲爱的用户和管理人员,能否请你们帮助我解决以下问题。我决定测试免费交易信号 服务https://www.mql5.com/ru/signals/mt4,我按照说明设置了参数,但什么也没有发生。我输入的日志有以下错误。

2012.11.16 11:04:14 '340421': 信号 - 同步失败,交易行为的处理被禁用
2012.11.16 11:04:14 '340421': 信号 - 同步终止,无法复制头寸 [#37469421 买入 10.00 USDCHF at 0.9411 sl: 0.9231 tp: 0.0000]
2012.11.16 11:04:14 符号:符号U‰`¤"B<u}{њWr1zzfußtљUYShchµtuNЏEDT`P}sh197XT¬n "zlss®VYЏ--¶¶ԛl
KЂSh 9ґnhuP©h_Yu6nzj-KSQr-ÏŽS<"MSHr©±ЇР`Ì$e_459↩*t6&SО
。y*'HushR"±,emkЊG€a!ÇV®jtvЉGLYkҐj>5ґDP@m!)'HDњE "јў®ћLF‡...¦aў; srI


定制化有什么问题?我的经纪人是FBS

Торговые сигналы: MetaTrader 4
Торговые сигналы: MetaTrader 4
  • www.mql5.com
Торговые сигналы для MetaTrader 4 с автоматическим исполнением на вашем счете
 
Yedelkin:

或者,输入另一个变量,如果第一个变量被送去打印,你将为其赋值为true。

在你建议的情况下,变量在每次打钩时都是假的,在打印到日志后变成了真。然后有一个新的tick,onTick() 操作符从上到下执行其程序。变量又是假的,在条件中,如果变量是假的,则打印。因此,日志中的每一个刻度都充满了条目。检查了!!!。

我使用TimeCurrent() 函数,试图从逻辑上理解语句中的程序执行,以下是代码。

因此,只有那些蜱虫的时间为0分和0秒的条目才被记录下来。钟表的情况更复杂。唯一改变的是小时信号。如果 "锤子 "在00点,而这是很少见的,那么放0将作为一个过滤器并产生一个条目。也就是说,录音的数量减少了,但仍然希望更好。

  double r=0;
  double x=0;
  double z=0;
  double rr=0;
  double xx=0;
  double zz=0;
  double a=0;
  r = Open[1];
  x = Close[1];
  z = r - x;
  xx=Low[1];
  a=x-xx;
  zz = 2*z;
MqlDateTime secc;
bool logno = false;
  if (Open[3]<Close[3] && Open[2] <Close[2])         
    if (Open[1]==High[1]&&Close[1]<Open[1])
     if (a>=zz){
    /* if (!logno){
     Print ("На графике свечная модель -Молот");
     logno = true;}*/
     TimeCurrent(secc);
     while(secc.sec==0 && secc.min==0 && !IsStopped())
     {
 Print ("На графике свечная модель -Молот");
 break;
     
        }

这是一个快速的尝试,在图表上描绘和寻找 "锤子 "烛台形态。顺便说一下,这里也注释了变量为false的例子。

锤子形态是:下影线至少是身体的2倍,最多是3倍。上影线没有或非常短(不超过蜡烛范围的10%)。在长期比赛中,身体的颜色是不重要的;在短期比赛中,白色的锤子比黑色的锤子要强得多。

 

我还想澄清一下,如何禁止一个变量在价格后面移动。

例子。一个简单的停止拖网。我们告诉变量在20个点的距离内跟随价格(例如)。换句话说,变量=买入价-20点(假设我们已经买入)。价格上涨,我们成功地跟随它。然后价格下降,我们需要变量保持在同一水平上的价值。

所以我的问题是,我们如何防止变量在某一时刻取值?

 
paladin800:
也许你的意思是确定你所需要的条形图的数量,而不是在每一个刻度上,而是只有当一个新的条形图 出现时?请看这里 或在论坛上搜索IsNewBar这个词的组合。

谢谢你!!!。有用的参考资料!!。将来会派上用场。

但有点偏,虽然....你也可以想个办法绕过这个问题。

 
talliy:

在你建议的情况下,每个刻度的变量是假的,在执行日志打印后变成了真。然后一个新的tick和onTick() 操作符从上到下执行其程序。变量又是假的,在条件中,如果变量是假的,则打印。因此,日志中的每一个刻度都充满了条目。检查了!!!。

我使用TimeCurrent() 函数,试图从逻辑上理解语句中的程序执行,以下是代码。

因此,只有那些蜱虫的时间为0分和0秒的条目才被记录下来。钟表的情况更复杂。唯一改变的是小时信号。如果 "锤子 "在00点,而这是很少见的,那么放0将作为一个过滤器并产生一个条目。也就是说,录音的数量减少了,但仍然希望更好。

这是一个快速的尝试,在图表上描绘和寻找 "锤子 "烛台形态。顺便说一下,这里也注释了变量为false的例子。

锤子形态是:下影线至少是身体的2倍,最多是3倍。上影线没有或非常短(不超过蜡烛范围的10%)。在长期的游戏中,身体的颜色并不重要;在短期内,白色的锤子要比黑色的锤子强得多。


static bool logno = false;