Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 364
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Guten Tag, es ist ein Indikator, aber in der Tester nach einem bestimmten Zeitraum von Anfang des Jahres bis März funktioniert und dann aufhört, Signale zu geben, und ich brauche, um einen langen Zeitraum (AuthorizedSSBODynamicBreakoutBoxFinalEdition) zu testen, wo im Code kann diese Einschränkung sein - bitte geben Sie zumindest einen Hinweis, wo zu graben, welche Betreiber bestimmen es?
Haben Sie den Quellcode des Indikators? Wenn nicht, suchen Sie nach dem Autor))))
Wie sagen Sie mir bitte einige bewährte Expert Advisor in MQL4 und 5, und die Zeit ist sehr kurz, manchmal müssen Sie eine Idee zu überprüfen oder jemandem helfen, endlich eine Grundlage für den Roboter zu schaffen und zu beenden, es selbst zu schreiben ...
Ich wäre Ihnen sehr dankbar, vielen Dank im Voraus!!! =)
Ich schreibe eine Funktion wie diese
Aber warum gibt OrderOpenPrice() den auf vier Stellen gerundeten Preis auf den fünf Stellen zurück?
Versuchen Sie, dies zu tun, und sehen Sie, was OrderOpenPrice() wirklich zurückgibt. Vielleicht liegt es daran, dass Sie die Funktion mit dem Parameter Digits normalisieren und Sie im Drucker nicht das sehen, was es wirklich ist.
Ich schreibe eine Funktion wie diese
Aber warum gibt OrderOpenPrice() den auf vier Dezimalstellen gerundeten Preis zurück?
Print gibt in diesem Fall keinen gerundeten Preis zurück, sondern nur die Standardanzahl der Dezimalstellen.
In der Tat, Forex arbeitet nicht mit Dezimalstellen, die niedriger als Ziffern sind. In der Regel, mit dem Beispiel der EURSD ist es nur vier Dezimalstellen, und auch die fünfte Dezimalstelle ist eine Idee von Brokerage-Unternehmen.
Aber in Ihrem Fall ist es besser, so vorzugehen: Print(DoubleToStr(OrderOpenPrice(),Digits));
Versuchen Sie, dies zu tun, und sehen Sie, was OrderOpenPrice() wirklich zurückgibt. Vielleicht liegt es daran, dass Sie die Funktion mit dem Parameter Digits normalisieren und Sie im Drucker nicht das sehen, was es wirklich ist.
Es ist das gleiche ohne Normalisierung, ich muss Punkte vom Eröffnungskurs subtrahieren, wenn so der Preis ist, was ich brauche, aber dann bekomme ich eine Typ-Fehlanpassung in IF(
Ich muss Punkte vom Eröffnungskurs abziehen, und wenn dies der Fall ist, ist der Preis derjenige, den ich brauche, aber dann erhalte ich eine Typinkongruenz in IF (
Rechnen Sie vierstellig. Wenn Sie Wert auf Genauigkeit legen, setzen Sie den Wert der letzten Stelle ein, da er sich während der Berechnungen aufgrund der Art der Berechnungen nicht ändert.
Führen Sie die Berechnungen wie für vier Ziffern durch, und wenn Ihnen die Genauigkeit wichtig ist, dann geben Sie sie an Ort und Stelle zurück, mit dem Wert der letzten Ziffer, der früher war, weil er sich während der Berechnungen nicht ändert, aufgrund der Besonderheiten der Berechnungen.
Wie bereits erwähnt, konvertieren Sie zunächst double in einen String mit der angegebenen Anzahl von Dezimalstellen und drucken ihn dann mit Print.... in ein Protokoll.