Backtesting/Optimisation - page 62

 

Le voici. Il utilise votre fichier de présélection.

Quels sont exactement les paramètres que vous avez optimisés ?

Dossiers :
 
stace:
C'est ici. Il utilise votre fichier de préréglage. Quels sont exactement les paramètres que vous optimisez ???

J'ai joint les variables optimisables pour les trades longs uniquement ci-dessous.

30% de profit (6 mois !!!) en ne risquant que 5%, c'est pas mal du tout.

Dossiers :
long_opti.set  6 kb
 
GeorgeL:
J'ai joint les variables optimisables pour les trades longs, seulement en dessous de 30% de profit (6 mois ! !!) en ne risquant que 5%, ce n'est pas mal du tout.

Pour moi, c'est une très petite quantité.

Merci, je vais optimiser aussi.

 
stace:
Pour moi, c'est une très petite quantité. Merci, je vais optimiser aussi.

Optimisez pour votre courtier actuel, cela pourrait être beaucoup mieux.

Quels sont les EA que vous utilisez sur votre compte actuel?

 
GeorgeL:
Optimisez pour votre courtier actuel, cela pourrait être beaucoup mieux. Quels EA's utilisez-vous sur votre compte actuel ?

J'utilise généralement des ea basés sur la martingale.

Sur mes statistiques c'est stochastique + adx + atr et le dernier est martingale.

 
leeb:
Une possibilité serait d'avoir une version fonctionnant sur IBFX et dans les propriétés de l'EA de n'autoriser que les transactions longues et une autre copie de l'EA fonctionnant sur un autre courtier ou IBFX et n'autorisant que les transactions courtes - une douleur je sais mais ces nouvelles réglementations de la NFA sont juste cela...

Je suis d'accord avec leeb. Cet EA contrôle les positions ouvertes avec son code existant. J'ai ajouté ce que je pense être des commentaires corrects pour montrer où sont les paramètres...

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

int HM_ALL = 2 ; // Nombre maximum de trades ouverts

int Trade = 1 ; //

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

extern bool Trd_Up_X = true ; // Autorise les transactions à la hausse.

int HM_Up_X = 1 ; // Combien d'achats autorisés en position ouverte ?

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

extern double tpx = 50 ;

extern double slx = 50 ;

extern int px = 10 ;

extern int x1 = 0 ;

extern int x2 = 0 ;

extern int x3 = 0 ;

Externes int x4 = 0 ;

int tx = 0 ;

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

extern bool Trd_Dn_Y = true ; // Autoriser la négociation de DN

int HM_Dn_Y = 1 ; // Combien de ventes sont autorisées en position ouverte ?

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

extern double tpy = 50 ;

extern double sly = 50 ;

extern int py = 10 ;

extern int y1 = 0 ;

extern int y2 = 0 ;

extern int y3 = 0 ;

int externe y4 = 0 ;

int ty = 0 ;

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

Vous pouvez soit changer le nombre maximum de trades ouverts à 1, soit contrôler la direction dans laquelle vous souhaitez trader.

Puisque vous optimiserez souvent avec cet EA, vous pouvez tout aussi bien choisir la direction du trade en même temps.

Si vous avez toujours besoin de trader dans les deux sens, vous pouvez chercher un courtier dont la plateforme vous permet de gérer deux comptes distincts sur une seule plateforme. Toutefois, cela nécessitera deux soldes de marge.

 

Fixer le code pour s'adapter aux courtiers à 5 chiffres

dreamfab:
Première position ce matin (GMT +1), et j'ai une question :

J'ai essayé de modifier le code pour qu'il fonctionne avec les courtiers à 5 chiffres, mais ça ne marche pas...

gdPointFactor = 1 ;

if (MarketInfo(Symbol(), MODE_DIGITS) == 2 || MarketInfo(Symbol(), MODE_DIGITS) == 4){

gdPointFactor = 10 ;

si (MarketInfo(Symbol(), MODE_DIGITS) == 5)

{

gdPointFactor = 100 ;

}

}

Est-ce correct ?

Merci.

Vous avez trouvé la partie du code qui comporte une erreur, mais vous n'avez pas trouvé la solution correcte. Le code original qui était censé traiter les comptes à 4 et 5 chiffres est le suivant :

gdPointFactor = 1 ;

si (MarketInfo(Symbol(), MODE_DIGITS) == 2 || MarketInfo(Symbol(), MODE_DIGITS) == 4){

gdPointFactor = 10 ;

}

Ici, nous avons (get decimal point factor) gdPointFactor égal à 1. L'utilisation de Find pour rechercher le code de cette variable montre qu'il s'agit d'un multiplicateur utilisé chaque fois que Point est utilisé. Pour les comptes à 4 chiffres, le multiplicateur devrait être égal à 1 afin que rien ne change dans le calcul. Cependant, pour les comptes à 3 et 5 chiffres, nous voulons multiplier par 10 pour obtenir la décimale supplémentaire. La solution correcte consiste donc à remplacer le 2 par le 3 et le 4 par le 5.

En lisant ==3 et ==5, cet EA fonctionnera toujours pour vous dans deux semaines lorsque IBFX deviendra un compte à 5 chiffres. Sinon, vous devrez revoir toutes vos "corrections" manuelles à nouveau.

Je remarque maintenant une différence très étrange entre l'EA et l'utilitaire de filtrage. Vous pouvez voir que la fonction d' initialisation transmet la valeur de gdPointFactor à l'utilitaire de filtre. Remarquez également que gdPointFactor a été utilisé par l'auteur de l'utilitaire de filtrage dans tous ses calculs, alors que l'auteur de l'EA n'a pas ajouté ce facteur aux calculs de l'EA.

Heureusement, tous les calculs de points dans cet EA sont très simples et l'adaptation au compte à 5 chiffres est simple. En utilisant Edit>Replace, parcourez chaque instance de * Point et remplacez-la par * Point * gdPointFactor.

Les réponses aux autres messages suivent :

Certains des premiers intervenants ont déclaré que cette EA ne fonctionne pas (même s'ils savent qu'elle fonctionne pour GeorgeL). Ils ont peut-être fait ce que j'ai fait en plaçant les fichiers utilitaires d'inclusion directement dans le dossier d'inclusion comme nous l'avons toujours fait. Cependant, le fichier RAR contenait ces utilitaires dans un sous-dossier system_v2 à l'intérieur du dossier include. L'auteur a probablement voulu garder cet ensemble dans un seul groupe afin de les retrouver facilement pour les éditer. C'est pourquoi le sous-dossier system_v2 (ou autre) était inclus dans le chemin d'accès à ces utilitaires dans le code EA.

Ceux qui ont eu des difficultés à ouvrir le fichier RAR peuvent s'amuser à chercher jZip sur Google. jZip décompose gratuitement vos fichiers ZIP et RAR et à peu près tous les autres fichiers condensés (contrairement à ces autres).

Une autre erreur que certains d'entre nous ont commise est de ne pas avoir enregistré le fichier .set dans le sous-dossier experts/presets. Après avoir sélectionné cet EA dans votre testeur Stratagy, allez dans les paramètres des variables et trouvez le bouton Charger. Cliquez sur Charger et allez dans le sous-dossier Presets et cliquez sur le fichier .set de cet EA pour charger les paramètres qui l'accompagnent.

Si l'EA commence à fonctionner mais n'est pas rentable pour vous, il se peut que votre courtier soit dans un fuseau horaire différent de celui pour lequel l'EA est configuré. Si c'est le cas, vous devrez faire attention aux paramètres de l'heure programmée afin de réussir vos transactions.

Le fait que cet EA ait été configuré pour permettre la couverture peut être la raison pour laquelle il a plus de succès que d'autres EA que vous avez peut-être essayés. L'EA dispose déjà de paramètres qui permettent de limiter les transactions à une seule direction à la fois ou à une seule direction. Avec cet EA, la direction de la transaction, le Stoploss et le Takeprofit sont tous des paramètres manuels qui doivent être réinitialisés fréquemment lorsque les conditions du marché changent. Plutôt que de changer la nature de cet EA, vous feriez mieux de demander à votre courtier les solutions disponibles pour utiliser cet EA pour gérer deux comptes.

Joyeux trading à tous, et merci à GeorgeL pour avoir posté, et merci à Shooter777 pour un excellent échantillon à partir duquel apprendre.

 

salutations george

donc l'EA et le 5-16-2009 eu.set sur votre premier post peuvent toujours être utilisés sur ibfx et n'iront pas à l'encontre de leur nouvelle politique anti-hedging ?

si non, veuillez poster une nouvelle version ?

 
happyfx:
salutations george

Donc l'EA et le 5-16-2009 eu.set sur votre premier post peuvent toujours être utilisés sur ibfx et n'iront pas à l'encontre de leur nouvelle politique anti-hedging ?

Si ce n'est pas le cas, veuillez poster la nouvelle version ?

Vous pouvez toujours utiliser l'optimisation du 16 décembre, mais c'est pour la couverture.

J'ai fait une Optimisation Long only et Short only car je vais ouvrir un second compte pour cet EA.

 

Bonjour ! Y a-t-il un moyen de faire fonctionner cet EA sur des brokers à 5 chiffres ? (ajouter un 0 à tous les paramètres ne fonctionne pas) Merci.