![]() |
|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
![]() |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
![]()
Könnte mir bitte jemand helfen, wie ich den Loop für zeitabhängige Berechnung im Indikator am besten formuliere?
Einstellungen: 1. Der Indikator wird automatisch/gezwungen im m5 Chart geladen. Das ist möglich, weil er nur Daten zeigt (keine Kurse oder sonstiges). 2. Zeiteinheiten für die Neuberechnung der Werte m5 bis w1. 3. Es existiert schon ein Array int iATimFrams[7]={5,15,30,60,240,1440,10080}; 4. Berechnungen sollen mit jedem Beginn einer neuen Zeiteinheit geschehen. OnCalculate sieht bisher so aus: Code:
// ====================================== first run if(prev_calculated==0) { // === calculate the past values CalcAdr30(); //from yesterday 30 days back CalcAdr0(); //for today CalcAdrLeft(); //for today CalcChange(); //summaries till now CalcState(); //summaries till now } else { // === hier fehlt mir eine elegante Lösung } int iACalcRepeats[7]={1,3,6,12,48,288,2016}; zu schaffen und mit dem zu rechnen als die Berechnungs Timeframes durch _Period zu dividieren? Und/oder wäre es besser, die einzelnen CalcXy() Funktionen in einem 5minuten Timer zu packen anstatt als else Anweisung in OnCalculate (oder spielt das keine Rolle)? Wäre nett, wenn mir Programmier-Profis da zeigen könnten, wie man es am besten macht. Danke. AVT |
|
|||
![]()
Hallo AVT,
1.Du könntest eine IsNewCandle Funktion schreiben, und falls true Deinen Code ausführen 2. Oder eine fixe Zeit also zb. alle 15 Minuten datetime newExecution = TimeCurrent () + 15*60;// (sollte vielleichtin den Globals stehen, sonst wird der Code nie erreicht :-)) if (TimeCurrent() == newExecution) { // Dein Code // neue Executionzeit setzten newExecution = TimeCurrent () + 15*60; } Gruß TraumExpert Geändert von TraumExpert (vor einer Woche um 14:09 Uhr) |
![]() |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|