|
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 |
|
|||
Statistik erstellen
Hallo,
ich will eine Statistik erstellen mit dem folgenden EA, und einigen eingezeichneten HLinien im Chart. Nur Leider geht das nicht...wo liegt der Fehler Code:
#property copyright "" #property link "" #property version "1.00" #property strict extern int NACHKOMMA =1; void OnTick() { static double lastBid2=Bid; for (int dd=ObjectsTotal()-1;dd>=0;dd--) { string name2= ObjectName(dd); double pricee[1]; ENUM_OBJECT type2= (ENUM_OBJECT) ObjectGetInteger(0,name2,OBJPROP_TYPE); pricee[dd]=NormalizeDouble(ObjectGet(name2,1),NACHKOMMA); if(High[1]>pricee[dd]&&Low[1]<pricee[dd])Print(TimeCurrent(),"; Linie gekreuzt: ;",pricee[dd]); //Wenn Linie von Kerze gekreuzt wurde, notiert er die Zeit und den Wert der Linie in Log } } Geändert von Max2018 (07.11.19 um 14:42 Uhr) |
|
|||
Wenn für pricee[] nur 1 Element deklariert wird, aber 2 und mehr Objekte vorhanden sind, wird es problematisch. Das funktioniert nur, wenn dd = 0 ist!!, dd.h. wenn nur ein Objekt vorhanden ist. Ab dd > 0 würde bei
pricee[dd]=NormalizeDouble(ObjectGet(name2,1),NACHKOMMA); ein harter Array-Fehler resultieren. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
OK - DANKE
Habe es dann so gemacht , ohne eingezeichnete Linien. Daten werden in eine Datei geschrieben. Code:
//+------------------------------------------------------------------+ //| HLINE_ZEICHNEN.mq4 | //| | //| | //+------------------------------------------------------------------+ #property copyright "" #property link "" #property version "1.00" #property strict input double Startwert=12700; extern int NACHKOMMA =1; double BB; int Write(string str, string filename); void OnTick() { static double lastBid2=Bid; double pricee[1]; BB=NormalizeDouble(Startwert,2); if(High[1]>BB&&Low[1]<BB&&TimeCurrent() == Time[0]) { int handle; handle = FileOpen("TEST.txt",FILE_READ|FILE_WRITE|FILE_TXT,"/t"); // Datei wird unter \MQL4\Files abgelegt oder im \MQL4\tester\Files Ordner FileSeek(handle, 0, SEEK_END); FileWrite(handle,Time[1],"; Linie gekreuzt: ;",BB); //nach “handle,” kommt das was in die Datei geschrieben wir mit Komma getrennt FileClose(handle); if(handle<1) { Print("File my_data.dat not found, the last error is ", GetLastError()); } }; // } } //+------------------------------------------------------------------+ |
Lesezeichen |
Stichworte |
statistik |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|