Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Résultat :
Soit je fais quelque chose de mal (merci de corriger), soit MetaDriver a fait une erreur théorique (lors de la conception de l'algorithme).
:)
Si l'on considère que la "conception" de l'algorithme a pris environ 3 minutes (et 7 minutes d'implémentation), je m'en suis plutôt bien sorti :) Le but était de montrer une idée fonctionnelle et de clarifier l'énoncé du problème.
Et tout cela s'est avéré utile - les développeurs ont eu une réelle opportunité d'améliorer la fonction MathFloor() - de toute évidence, elle n'est pas tout à fait proprement implémentée.
Au final, ils ont dû le bricoler. C'était amusant. J'ai réussi à obtenir une fonction stable (je veux dire CountSignedDigits(double x)) seulement après presque une heure d'expériences.
Et même maintenant, je ne suis pas sûr qu'il fonctionnera correctement avec toutes les valeurs d'entrée. Je n'ai pas développé un stress-test automatisé, j'en ai fait un manuel. Veuillez le tester.
Je m'attends à un fonctionnement stable jusqu'à 10 décimales après la virgule flottante.
Stress-test joint. // Je n'ai pas supprimé certaines réalisations intermédiaires du code. Je l'ai laissé dans les commentaires pour que vous puissiez essayer/réfléchir. Y compris les développeurs.1. il n'est pas nécessaire de définir dig pour un lot, il suffit de le normaliser à la bonne étape :
2. même s'il y a des déchets dans la variable lot lors de l'envoi d'une demande de transaction (dans la décimale), ils devraient être éliminés par le terminal lui-même.
En tout cas, je n'ai pas eu de problèmes pendant plusieurs années d'utilisation d'une telle construction.
4. si vous voulez assurer, vous pouvez le normaliser à 8 décimales (avec une marge) - s'il y a des déchets après la normalisation "correcte", ils seront beaucoup plus loin.
La première idée est correcte, les autres sont suspectes. :)
La mise en œuvre est viable dans la pratique, mais pour les conditions artificielles définies par le "démarreur de problèmes" (c), elle est inexacte. Pour les étapes discrètes, la génération n'est pas relative à lot_min, mais relative à zéro. :)
Cependant, il peut être facilement corrigé si vous le remarquez.
// Ne prenez pas toutes ces perles trop au sérieux. Les clarifications sont purement théoriques, pour l'entraînement du cerveau, car en pratique je n'ai jamais vu lot_step égal à, disons, 0.0231.....
;)
L'option est correcte. Correctement pris en compte par lot_min comme dans mon NL().
Ma variante est également disponible. Notez que pour certains instruments, le pas de changement de prix est plus grand que le point.
Si nous prenons comme axiome que les étapes "partent" du lot minimum plutôt que de zéro, l'algorithme correct est le suivant :
Dans la version Composter, les étapes "partent" de zéro. Ce qui ne me semble pas correct.
Dans la variante MetaDriver, le code saute une valeur négative. =Р
...
Dans la variante MetaDriver, le code saute une valeur négative. =Р
:)) ..... Oh oui ! Vous ne travaillerez pas du tout ! ;-R ;-b ;-R
En fait, la variante la plus courte et en même temps la plus exacte est celle-ci :
Et ce, sans vérifier la nullité et la négativité de lot_step, lot_min et lot_max! !......
:))))
Euh... a touché un point sensible. :)) La dernière ligne a été corrigée à la main dans un post de forum, alors pardonnez-moi. =)
Au fait, votre code n'a pas compilé non plus (j'ai oublié de mettre une parenthèse fermante dans la dernière ligne). :-Р
En outre, il est 2-3 fois plus lent (je l'ai vérifié sur le script), mais la qualité de la vérification est la même. :-Р
Quoi qu'il en soit, tant qu'il n'y aura pas de code approprié pour déterminer l'entier significatif, je suivrai le conseil du composteur : normaliser le volume à 8 décimales.
Espérons qu'il n'y aura pas d'embûches.
Merci à tous pour votre aide.
Vous êtes drôles, je vois.
dans votre premier message vous avez donné NL() ce que vous n'avez fait que deux pages plus tard ;)
Il y a une autre question pour les gourous. Lorsque je teste la multidevise, j'obtiens des erreurs (capture d'écran jointe).
J'essaie d'effectuer une opération commerciale, mais je reçois une réponse : Pas de prix. Selon le testeur, on peut voir que les cotations pour cette paire commencent à arriver en 2011.01.0301:00:00, tandis que l'EURUSD est également cotée à partir de 2011.01.0300:00:00 Y a-t-il un moyen de trouver l'heure du début des cotations pour contourner cette erreur ?
Il y a une autre question pour les gourous. Lorsque je teste la multidevise, j'obtiens des erreurs (capture d'écran jointe).
J'essaie d'effectuer une opération commerciale, mais je reçois une réponse : Pas de prix. Selon le testeur, on peut voir que les cotations pour cette paire commencent à arriver en 2011.01.0301:00:00, alors que l'EURUSD est également cotée à partir de 2011.01.0300:00:00Y a-t-il un moyen de connaître l'heure du début des cotations pour éviter cette erreur ?