De la théorie à la pratique - page 105

 
Alexander_K2:
Très similaire.
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);
  }
Dossiers :
 
Nikolay Demko:
Tiens, Nikolaï, garde ça. Vous en aurez besoin pour écrire votre propre robot quand vous regarderez mes résultats réels. Je suis déjà embourbé dans VisSim pour toujours...
 
Nikolay Demko:

La structure tick peut être déclarée comme un tableau, et non comme une variable, et obtenir des données pour tous les instruments à la fois, mais dans SymbolInfoTick, au lieu de la variable _Symbol, qui renvoie le nom de l'instrument actuel, vous devez écraser les noms des instruments demandés.

 
Nikolay Demko:

Vous pouvez déclarer la structure tick comme un tableau, et non comme une variable, et obtenir des données pour tous les instruments en même temps. Seulement dans SymbolInfoTick vous devriez écraser les noms des instruments demandés au lieu de la variable _Symbol, qui retourne le nom de l'instrument actuel.

Je pense que vous êtes l'un des créateurs de MQL en général :)))) Est-il possible d'écrire des programmes aussi rapidement ? Cependant !
 
Alexander_K2:
Je pense que vous êtes l'un des créateurs de MQL ^)))) Est-il possible de froisser des programmes aussi rapidement ? Que dites-vous de ça ?

Je suis resté assis ici pendant un long moment ;)) J'ai participé au test bêta de MT5.

Les personnes qui ont lu les anciens fils de discussion ont participé au test de la version bêta de MT4.

En fait, j'écrivais pour MT2

 
Alexander_K2:
Alexander, réponds à une autre question (et je te lâche les baskets), pourquoi prendre des tics à des intervalles aléatoires s'ils viennent à des intervalles aléatoires de toute façon ?
 
Nikolay Demko:
Alexander, réponds-moi à une autre question (et je te laisse tranquille), pourquoi prendre des tics à intervalles aléatoires alors qu'ils viennent à intervalles aléatoires de toute façon ?

c'est vrai ! c'est aussi mon point de vue.
vous mettez vos intervalles aléatoires au dessus des intervalles aléatoires du marché.

 

Je pense qu'il est temps pour moi de quitter ce forum... Les vrais pros arrivent... Eh, c'est dommage queVladimir ne soit pas là. Il a probablement couru après une pièce de monnaie lancéepar le bas(et il sait où la lancer pour donner faim à un homme), et c'est tout, ni vu ni connu...

 
Nikolay Demko:
Alexandre, réponds à une dernière question (et je te laisse tranquille), pourquoi prendre des tics à intervalles aléatoires alors qu'ils viennent déjà à intervalles aléatoires ?
Pourquoi sont-ils soudainement aléatoires ? Avez-vous regardé l'histogramme des intervalles de temps entre les tics ?
 
Alexander_K2:
Pourquoi sont-ils soudainement aléatoires ? Avez-vous regardé l'histogramme des intervalles de temps entre les tics ?

Je ne parle pas de la distribution, je parle du processus lui-même, c'est aléatoire, il n'y a définitivement pas de modèle.

Il y en a dans les incréments, mais pas dans les intervalles de temps (si l'on ne tient pas compte du sessionnalisme).