从理论到实践 - 页 105

 
Alexander_K2:
非常相似。
datetime cur_time=0;//сюда пишем время
int time_returns=1;// сюда пишем через сколько следующий тик
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- create timer
   EventSetTimer(1);
   srand((uint)TimeCurrent());
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//--- destroy timer
   EventKillTimer();
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick(){ }
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
  {
   if(CheckTimerTick())
     {
      //---
      MqlTick tick={0};
      SymbolInfoTick(_Symbol,tick);// получили данные тика в сруктуру
      Print(TimeCurrent()," : ",tick.ask,"|",tick.bid);// сбрасываем данные в историю
      //---
     }   
  }
//+------------------------------------------------------------------+
bool CheckTimerTick()
  {   
   if(TimeCurrent()-cur_time>=time_returns)
     {
      time_returns=(int)round(-1*log((rand()+1.)/32768.)+1);
      cur_time=TimeCurrent();
      return(1);
     }
   else return(0);
  }
附加的文件:
 
Nikolay Demko:
这里,尼古拉--保留这个。当你看了我的实际结果后,你会需要它来写你自己的机器人。我已经在VisSim中永远陷于困境了......
 
Nikolay Demko:

tick结构可以被声明为一个数组,而不是一个变量,并一次获得所有工具的数据,但是在SymbolInfoTick 中,应该覆盖所请求的工具名称,而不是_Symbol变量,因为它返回当前工具的名称。

 
Nikolay Demko:

你可以将tick结构声明为一个数组,而不是一个变量,并一次性获得所有工具的数据。 只有在SymbolInfoTick中,你应该覆盖所请求的工具的名称,而不是_Symbol变量,它返回当前工具的名称。

我认为你是MQL的创造者之一,一般来说:))))。写程序有可能这么快吗?然而!
 
Alexander_K2:
我认为你是MQL的创造者之一 ^))))有可能这么快就把节目揉碎吗?那又如何呢?

我已经在这里坐了很久了)))我一直在参加MT5的测试版。

你读到的那些旧线程的人都参与了MT4测试版的测试。

事实上,我是为MT2写的

 
Alexander_K2:
亚历山大,再回答我一个问题(我就不跟你计较了),如果抽搐是随机出现的,为什么还要随机抽取?
 
Nikolay Demko:
亚历山大,再回答我一个问题(我就不打扰你了),反正抽搐是随机出现的,为什么要在随机的时间间隔内服用?

这就对了!这也是我的观点。
你把你的随机区间放在市场随机区间之上。

 

我想我是时候离开这个论坛了......真正的专家来了...诶,可惜弗拉基米尔不在这里。可能是 追着扔硬币 他知道在哪里扔,所以一个人变成了一个饥饿的人),就这样,没有看到或听到......

 
Nikolay Demko:
亚历山大,再回答我一个问题(我就不打扰你了),既然抽搐已经随机出现,为什么还要随机抽取?
为什么它们突然变得随机了呢?你有没有看一下刻度线之间的时间间隔的直方图?
 
Alexander_K2:
为什么它们突然变得随机了呢?你有没有看一下刻度线之间的时间间隔柱状图?

我说的不是分布,我说的是过程本身,它是随机的,绝对没有模式。

在增量上有,但在时间间隔上没有(如果你不考虑会期)。

原因: