Problème de données EA multi-devises MT4
Résultats de 1 é 6 sur 6

Sujet : Problème de données EA multi-devises MT4

  1. #1
    Salut,

    J'essaie de coder multitimeframe, EA multi-devises. Le problème qui me pose problème est que lorsque j'essaie d'obtenir des données pour une devise différente de celle utilisée par EA, les données sont uniquement disponibles pour la première devise. Il vaudra mieux illustrer cela avec des exemples:

    J'exécute l'EA sur USDLFX, et j'essaie de calculer certaines valeurs avec RSI. Le code va comme ceci:

    Code inséré pour (int i = 0; i lt; NoOfPeriods; i ) {rsiDelta = iRSI (pairName, TradePeriod # 91; i # 93 ;, 3, PRICE_CLOSE, 0) - iRSI (pairName, TradePeriod # 91; i # 93 ;, 3, PRICE_CLOSE, 1); if (rsiDelta gt; = RSITrendSensitivity2) score = RSITrendScore; sinon si (rsiDelta gt; = RSITrendSensitivity1) score = RSITrendScore2; else if (rsiDelta lt; = RSITrendSensitivity2) score - = RSITrendScore; else if (rsiDelta lt; = RSITrendSensitivity1) score - = RSITrendScore2; }
    pairNames est une liste de paires:
    EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCAD, USDCHF, USDJPY

    Donc, il calcule ok pour EURUSD, mais toutes les autres paires n’obtiennent que 0 de la part de iRSI, et j’obtiens le code d’erreur 4054 lorsque je demande la dernière erreur.
    Lorsque je change de séquence et que, par exemple, GBPUSD sera le premier, GU calculera et EU et toutes les autres paires n’obtiendront que 0 de iRSI.

    Je suis resté assis jusqu'à tard hier soir sans résultat. Je ne pouvais rien google utile. Si quelqu'un avait un problème similaire et le résolvait, je serais vraiment reconnaissant d'avoir un indice.

  2. #2

    Citation Envoy? par ;
    Code inséré pour (int i = 0; i lt; NoOfPeriods; i ) {rsiDelta = iRSI (pairName, TradePeriod # 91; i # 93 ;, 3, PRICE_CLOSE, 0) - iRSI (pairName, TradePeriod # 91; i # 93 ;, 3, PRICE_CLOSE, 1); if (rsiDelta gt; = RSITrendSensitivity2) score = RSITrendScore; sinon si (rsiDelta gt; = RSITrendSensitivity1) score = RSITrendScore2; else if (rsiDelta lt; = RSITrendSensitivity2) score - = RSITrendScore; else if (rsiDelta lt; = RSITrendSensitivity1) score - = RSITrendScore2; } pairNames est une liste de paires: EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCAD, USDCHF, USDJPY ...
    Par liste de paires, je suppose que vous voulez dire que pairNames est un tableau de chaînes de noms de paires. Si tel est le cas, alors vous voudrez peut-être examiner votre utilisation de pairNames (index manquant).

  3. #3

    Citation Envoy? par ;
    Par liste de paires, je suppose que vous voulez dire que pairNames est un tableau de chaînes de noms de paires. Si tel est le cas, alors vous voudrez peut-être examiner votre utilisation de pairNames (index manquant).
    Au départ, il s’agit d’une chaîne, mais dans init (), je la scinde en utilisant ',' comme séparateur, dans une table de chaînes. Debug m'imprime les noms des paires un par un, comme USDCAD, EURUSD, etc., de sorte qu'ils se séparent correctement. De plus, la première paire compte toujours correctement. Seulement deuxième, troisième et ainsi de suite me donne des zéros. Je peux coller tout le code EA en quelques heures. Je le posterai plus tard sur FF de toute façon. Merci pour votre réponse zznbrm

  4. #4
    En fait, je pourrais avoir une idée du problème, maintenant, quand je pense. Les heures passées la nuit devant l'ordinateur peuvent vraiment endommager votre cerveau
    pairNames ressemble à ceci: EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCAD, USDCHF, USDJPY. En le séparant, il laisse un espace devant chaque paire, mais en premier. Cela expliquerait pourquoi seule la première paire a obtenu de bonnes données. Je vais essayer cela quand je rentre à la maison. Si tel est le cas, ce fil est une corbeille
    Lorsque vous codez la nuit, buvez au moins beaucoup de café

  5. #5
    Pensez que zznbrm vous a donné un bon indice. Comment allez-vous arriver à pairName? Est-ce un tableau de chaînes? Utilisez-vous un index de ce tableau pour obtenir le nom pairName?

  6. #6
    Citation Envoy? par ;
    Pensez que zznbrm vous a donné un bon indice. Comment allez-vous arriver à pairName? Est-ce un tableau de chaînes? Utilisez-vous un index de ce tableau pour obtenir le nom pairName?
    Oui, zznbrm m'a donné un indice et j'ai commencé à réfléchir à ces noms de paires. J'ai résolu le problème il y a environ une heure. C'était juste comme je le soupçonnais
    Ces espaces étaient difficiles à remarquer dans le journal. C'était juste aussi simple
    et j'ai cherché un interweb entier à ce sujet .. En tout cas merci les gars pour l'intérêt et pour votre aide, je l'apprécie.

Régles des messages

  • Vous ne pouvez pas cr?er de sujets
  • Vous ne pouvez pas r?pondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas ?diter vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Désactivé
  • Le code HTML est Désactivé
Le site d'sundytrading utilise des cookies
Le site d'sundytrading utilise des cookies pour vous assurer la meilleure expérience sur notre site ; certains sont déjà effectifs. Vous pouvez consulter plus de détails sur leurs usages ici. Veuillez cliquer sur le bouton à droite pour accepter nos cookies. Si vous continuez à utiliser le site internet d’sundytrading, nous considérerons que vous acceptez nos cookies.