Spread trading dans Meta Trader - page 32

 

Maintenant j'ai exécuté mon Expert Advisor (lot=0.1) séquentiellement sur des graphiques de paires (dollaren+euroyen) du 29/12/2009 jusqu'à maintenant. A l'œil, j'ai défini les paramètres suivants : Delta=20 déviation et fermeture totale = +10 pips.

Il est clair qu'au total nous avons un bon profit, plus de 200 pips.

Je ne comprends pas pourquoi le nombre de transactions est différent. Il est probable que certaines barres manquent sur une paire du graphique. Ou il y a eu une défaillance sur les lacunes. Le mécanisme de l'Expert Advisor a "bugué". Je vais essayer de l'analyser.

Mais il est clair qu'en général, le travail de la simulation virtuelle est correct. Les graphiques sont symétriques - comme ils doivent l'être lorsqu'on travaille avec une couverture !

Les transactions 11 et 15 sur les graphiques - eh bien, exactement, ils ont été fermés à un écart.

EURRJPY



USDJPY


 
Respectés messieurs, qui sait comment on compte la cointégration ? Quelqu'un peut-il m'aider ?
 
al982 >>:
Уважаемые господа, кто знает как считается коинтеграция? Может кто помочь?

Ici.

 
Bien sûr, merci, mais connaissez-vous des ressources sur les biscottes ?
 
al982 >>:
Конечно спасиб, а на рсуском не знаешь ресурсов ?

Google est votre guide.

En bref, la cointégration ne compte pas, il n'y a pas d'indicateur numérique pour elle. Vous pouvez seulement essayer d'estimer sa présence/absence. La variante la plus simple pour deux actifs : régression d'une ligne X sur une autre ligne Y, on obtient la pente B et l'ordonnée à l'origine A. Nous construisons un processus de propagation comme Z = Y - X*B - A. Testons la stationnarité du processus résultant. Si Z est stationnaire, nous pouvons supposer que X et Y sont cointégrés et que le processus Z peut être négocié avec succès.

Une variante plus avancée consiste à trouver un vecteur propre correspondant à la valeur propre minimale de la matrice variante. Le processus est plus joli et peut rendre compte d'un nombre illimité d'actifs.

Le problème vient de la définition de la stationnarité. Le processus stationnaire devrait être stationnaire sur toute longueur allant jusqu'à l'infini, mais nous avons toujours une série finie, c'est-à-dire qu'il est très facile d'être trompé.

 
rid >>:

Вот сейчас прогнал советник (лот=0.1) ......Только не пойму, почему число сделок разное. Видимо, на одной паре на графике пропущены бары.


Bonjour à tous. En effet, le nombre de barres est différent sur les graphiques, bien que l'historique des tests soit le même.

Apparemment, nous devons déterminer à partir de quelle date (de quelle profondeur) l'historique correct des cotations pour les deux instruments commence.

Dans le :

/---------------------------------------------------------------------------+
//ФУНКЦИЯ РАСЧЕТА СРЕДНЕСТАТИСТИЧЕСКОГО СПРЕДА                               |
//---------------------------------------------------------------------------+               
  double CalculateAvarageSpread(string Symbol_1, string Symbol_2,
                              int Timeframe, int NBars)
{ int k;   double N = 0;   double Sum = 0;
   for( k = 0; k < iBars( Symbol_1, Timeframe); k++)  {
      if( N == NBars)         break;

      int symb2Shift = iBarShift( Symbol_2, Timeframe,iTime( Symbol_1, Timeframe, k),true);
      if( symb2Shift != -1)      {
         Sum += iClose( Symbol_1, Timeframe, k) - iClose( Symbol_2, Timeframe, symb2Shift);
         N++;
      }   }   double avarageSpread = Sum / N;   return( avarageSpread);}

est déclaré -

int symb2Shift = iBarShift( Symbol_2, Timeframe,iTime( Symbol_1, Timeframe,k),true);
if( symb2Shift !=-1) {

Qu'est-ce que cela signifie ? Est-ce que j'interprète correctement la formulation de cette condition ? -

"Si une mesure est manquante sur un des instruments, alors sur le second instrument - la même mesure présente est sautée (non prise en compte)" ?

Et comment pouvons-nous obtenir ici - le numéro de la barre manquée la plus proche - sur n'importe lequel des instruments ? Peu importe lequel ?

S'il vous plaît, dites-moi...

.

 
rid >>:

Всем привет. Действительно, число баров разное на графиках, хотя история тестирования задана одинаковая.

Видимо нужно определить, с какой даты(с какой глубины) начинается корректная история котировок по обоим инструментам.

Pas besoin. C'est un phénomène courant pour les instruments qui connaissent des périodes de faible liquidité. Aucun tic n'est venu en une minute, la barre est manquée.

Qu'est-ce que cela signifie ? Est-ce que je lis correctement le libellé de cette condition ? -

"Si une mesure est manquée sur un des instruments, alors sur le second instrument - la même mesure présente est manquée (non comptée)" ?

Oui.

Et comment puis-je obtenir ici - le numéro de la barre manquée la plus proche - sur n'importe lequel des instruments ? Peu importe lequel ?

Veuillez me conseiller...

https://docs.mql4.com/ru/series/iBarShift

changer vrai en faux

 
wise >>:

Не нужно. Это -- частое явление для инструментов, у которых бывают периоды пониженной ликвидности. За минуту просто не пришел ни один тик, бар пропущен.

Да.

https://docs.mql4.com/ru/series/iBarShift

true поменять на false


Merci. Oui, en effet. Je suis passé à tf=m5 et les résultats sont beaucoup plus corrects dans la plupart des cas (tests). Les échanges sur les deux instr. sont à peu près les mêmes en nombre.
 

Au fait, pourquoi le spread de base est-il calculé sur les prix ouverts ? Ce n'est pas juste. C'est correctement basé sur les fermetures.

Pourquoi ?

1. Prix d'ouverture. Une barre s'est ouverte sur le premier instrument. Une barre s'ouvre sur le deuxième instrument. Pendant ce temps, il peut y avoir plus de ticks sur le premier instrument, et donc l'écart calculé peut être incorrect.

2. Pour les prix de clôture. Nous pouvons être sûrs qu'au moment de la fermeture de la barre, nous disposons des cotations actuelles, et donc que l'écart calculé sera correct.

 

Peut-être que les instruments (EURUSD+GOLD) pourraient constituer un bon tandem.

Aujourd'hui j'ai essayé manuellement d'utiliser des signaux d'inductances sur tf=m5 - expérimenté.

Voici le résultat :

//--------------------------------------------------

19934111 2010.01.11 09:53 vendre 0.30eurusd 1.4516 0.0000 0.0000 2010.01.11 11:27 1.4508 + 24.00
19934099 2010.01.11 09:53 acheter 0.30gcg0 1157.1 0.0 0.0 2010.01.11 11:27 1157.0 -3.00


19937919 2010.01.11 12:18 acheter 0.30gcg0 1158.1 0.0 0.0 2010.01.11 12:34 1159.7 +48.00
19937915 2010.01.11 12:17 vendre 0.30eurusd 1.4537 0.0000 0.0000 2010.01.11 12:34 1.4543 -18.00
//----------------------------------------------------------
Et maintenant, la "couverture" actuelle (c_euro+b_gold) est ouverte.