De la théorie à la pratique - page 532

 
Igor Makanu:

C'est-à-dire qu'il est plus facile de vérifier des idées dans Matlab (ou de les créer de toutes pièces dans MQL), mais si vous voulez porter une idée vers MQL, vous devrez étudier ALGLIB.

Pour quoi faire ? En plus d'Alglib, il y a beaucoup de librairies et de paquets bien documentés. Aussi bien en R qu'en Python. Et c'est beaucoup plus large que Alglib. La quasi-totalité est en C++. Port et utilisation.

D'une manière générale, sans modélisation préalable en amont, toute stratégie plus ou moins complexe en MQL est peu probable. Et alors vous ne voudrez même pas le traduire en MQL.)).

SZZ Au cours des 10 dernières années, pour diverses raisons, j'ai changé plusieurs terminaux et j'en suis arrivé à la conclusion que l'ATS ne devait pas dépendre du terminal. Et maintenant, je travaille sur deux terminaux différents. Le terminal ne doit être que le fournisseur de données et l'"exécuteur" des demandes.

 
Yuriy Asaulenko:

Pourquoi ? Il y a beaucoup de librairies et de paquets bien documentés en dehors d'Alglib. Que ce soit en R ou sous Python. Et beaucoup plus large que Alglib. Presque tout est en C++. Port et utilisation.

D'une manière générale, sans modélisation préalable en amont, toute stratégie plus ou moins complexe en MQL est peu probable. Et alors vous ne voudrez même pas le traduire en MQL.)).

SZZ Au cours des 10 dernières années, pour diverses raisons, j'ai changé plusieurs terminaux et j'en suis arrivé à la conclusion que l'ATS ne devait pas dépendre du terminal. Et maintenant, je travaille sur deux terminaux différents. Le terminal ne doit être qu'un fournisseur de données et un "exécuteur" de demandes.

Eh bien, j'ai porté AlgLib comme une pratique de la programmation pour MT5 - je l'étudie également pour comprendre le concept, pour ainsi dire, comment AlgLib est construit - j'ai passé une semaine, le résultat est positif

Eh bien, la vérification des idées - il est réel de porter rapidement quelque chose à MT5, mais à l'interface utilisateur, la tâche devient plus compliquée.

Eh bien, le non moins important avantage de Matlab est qu'il y a beaucoup de choses prêtes à l'emploi sur le web, hélas on n'aurait aucune envie de comprendre R et Python, cela prendra encore 3-4 mois de lecture et de tests )))).

SZS : Quelqu'un a écrit sur le forum que les entreprises informatiques n'accordent plus d'importance à la qualité de l'écriture du code, mais à la rapidité des tests des idées. Je comprends pourquoi tous les nouveaux logiciels sont gourmands en ressources, mais pour nos besoins, le concept est correct !

 
Igor Makanu:

Eh bien, la vérification des idées - quelque chose peut être rapidement porté sur MT5, mais jusqu'à l'interface utilisateur, la tâche devient plus compliquée. Avec Matlab, c'est plus facile - voici une formule, il suffit de l'écrire, de la vérifier et de la visualiser.

Eh bien, l'avantage non moins important de Matlab est que vous pouvez obtenir beaucoup de choses prêtes à l'emploi en ligne, hélas je n'ai pas envie de m'occuper de R et Python, cela prendra encore 3-4 mois de lecture et de tests )))).

SZS : Quelqu'un a écrit sur le forum que les sociétés informatiques ne valorisent plus la qualité de l'écriture du code, mais la rapidité des tests des idées. Je comprends pourquoi tous les nouveaux logiciels sont gourmands en ressources, mais pour nos besoins, le concept est correct !

Les avantages de MathLab pour la modélisation sont incontestables : il est rapide, pratique et réactif. R, Python, etc. ne sont pas inférieurs à cet égard, sauf qu'ils sont gratuits.

Python (qui essaie maintenant de faire quelque chose de réel en arrière-plan, très lentement) est apprécié par le fait qu'il est bon à la fois comme environnement de modélisation et de développement. C'est-à-dire qu'après la modélisation, vous disposez immédiatement d'un système prêt. Il ne reste plus qu'à le connecter au terminal. https://www.mql5.com/ru/forum/269426

Делаем торговую систему на Python для МТ.
Делаем торговую систему на Python для МТ.
  • 2018.07.30
  • www.mql5.com
Возникла мысль написать торговую систему на Python, и коли уж возникла, почему-бы не сделать эту систему общедоступной...
 
Yuriy Asaulenko:

Il n'y a pas de désaccord sur les avantages de MathLab pour la modélisation - rapide, pratique, rapide. R, Python, etc. ne sont pas inférieurs à cet égard, sauf qu'ils sont gratuits.

Python (qui essaie maintenant de faire quelque chose de réel en arrière-plan, très lentement) est apprécié par le fait qu'il est bon à la fois comme environnement de modélisation et de développement. C'est-à-dire qu'après la modélisation, vous disposez immédiatement d'un système prêt. Il ne reste plus qu'à le connecter au terminal. https://www.mql5.com/ru/forum/269426

Si vous avez une bonne connaissance pratique de Python, vous pouvez l'utiliser comme environnement de modélisation ou vous pouvez utiliser un dll à l'ancienne.

ou essayer de le faire à 100% à partir de zéro sur un pur MT4 )))).

ZS : il n'y a aucun problème pour vérifier vos idées, toutes les plateformes sont assez développées - je juge par la communauté, toute question confuse est résolue en une journée - beaucoup de forums en langue russe et des participants actifs, mais le problème est différent..... dans les bons domaines de recherche !

 
Igor Makanu:

mais le problème est autre.... dans la bonne direction de recherche !

Eh bien, c'est à ça que sert la modélisation, pas à écrire un ATC tout de suite.

J'ai modélisé le précédent PBX pendant environ six mois. Au final, le système s'est avéré très simple et très beau. Mais dans le processus, c'était plus que des complications suffisantes).

Ici, il n'y a presque pas de visualisation. Tous les journaux sont écrits dans la base de données Access.

 
RRR5:

comment ?


comment linéariser la fonction y=ax2+bx+c ?

prendre une régression multiple régulière, entrer 2 prix - régulier et au carré

et la sortie est juste le prix

vous n'en avez simplement pas besoin dans sa forme brute

 
Maxim Dmitrievsky:

ne compile pas, puis-je avoir un exemple de son utilisation ?

Incompris. Il s'agit d'un fichier de support de débogage. Si tu le prends aussi bien, ça va tirer beaucoup de choses.

Désinstallez l'inlude de ce fichier et supprimez tous les ASSERTs et TRACEs.

 
Georgiy Merts:

Il s'agit d'un fichier de support de débogage.

Supprimez-le, et supprimez tous les ASSERTs et TRACEs.

Ouais ok, j'ai déjà compris, merci... Je ne sais pas pourquoi j'en ai besoin, juste pour voir comment les gens intelligents codent)

 

Dans l'indicateur de régression polynomiale que j'ai posté, la régression est implémentée par une fonction :

double regression_QRMA(int period,int shift,int price) 
  {
   double lwma= iMA(NULL,0,period,0,MODE_LWMA,price,shift);
   double sma = iMA(NULL,0,period,0,MODE_SMA,price,shift);
   double qwma= ma_qwma(period,shift,price);
   double value=3.0*sma+qwma *(10-15/(period+2))-lwma *(12-15/(period+2));
   return(value);
  }


double ma_qwma(int period,int shift,int price) 
  {
   double sum=0;
   int j,i;
   for(j=shift,i=1;j<shift+period; j++,i++) 
     {
      sum+=switch_getPrice(price,j)*MathPow(period-i+1,2);
     }
   double value=6.0/(period *(period+1) *(2*period+1));
   return(value*sum);
  }


double switch_getPrice(int price,int shift) 
  {
   switch(price) 
     {
      case 0:
         return(Close[shift]);
      case 1:
         return(Open[shift]);
      case 2:
         return(High[shift]);
      case 3:
         return(Low[shift]);
      case 4:
         return((High[shift]+Low[shift])/2);
      case 5:
         return((High[shift]+Low[shift]+Close[shift])/3);
      case 6:
         return((High[shift]+Low[shift]+Close[shift]+Close[shift])/4);
      default:
         return(Close[shift]);
     }
  }


est-ce correct ?)
est-il possible de mettre en œuvre l'ISC par le biais d'assistants) ?

 
RRR5:
Dans l'indicateur de régression polynomiale que j'ai posté, la régression est implémentée par une fonction :
est-ce correct ?)
Est-il possible de mettre en œuvre une CPN par le biais d'un mannequin) ?

Eh bien, la correction - voyez par vous-même. Je trouve la formule de calcul de la valeur assez étrange. Ce n'est clairement pas MNC, mais ça pourrait bien être quelque chose entre les deux.

A propos du "MOC par les sorciers" - très douteux. La méthode des moindres carrés consiste à rechercher les coefficients de la courbe d'approximation de telle sorte que la somme des carrés des différences des valeurs des points sources et des points approximés soit minimale.

On prend les points initiaux, pour chaque abscisse on compte les ordonnées approchées, on soustrait les ordonnées réelles, mises au carré, et on additionne tous les carrés. On différencie cette somme par chaque inconnue (les inconnues sont les coefficients de la courbe d'approximation), et on obtient un système d'équations. Si nous l'approximons par un polynôme, nous obtenons un système d'équations algébriques linéaires. Il me semble que peu importe comment on le tourne, on n'obtiendra pas la même chose.