Du machst das auch nicht richtig
das handle und das ArraySetAsseries musst du in die on init reingeben
setindexbuffer brauchst du im ea nicht, weil das hat er ja im indicator. Das sind im indy die buffer
in die ontick schreibst du dann den copybuffer rein, hier für jeden buffer einen eigenen copybuffer
den buffer musst du im algemeinen teil mit
double xx[]; definieren, das hast du ja bemacht
#property indicatorbuffer brauchst du nicht, das ist nur im indi notwendig, nicht im ea
Danke für Deine Antwort - allerdings schein ich nicht eindeutig gewesen zu sein:
Die ersten beiden Codesnippets sind vom Indikator, nur der letzte Teil ist der Advisor.
Was Deine übrigen Anregungen angeht: Das hat's schon mal deutlich schneller gemacht, der Buffer übermittelt trotzdem noch kein Signal.. :(
Danke für Deine Antwort - allerdings schein ich nicht eindeutig gewesen zu sein:
Die ersten beiden Codesnippets sind vom Indikator, nur der letzte Teil ist der Advisor.
Was Deine übrigen Anregungen angeht: Das hat's schon mal deutlich schneller gemacht, der Buffer übermittelt trotzdem noch kein Signal.. :(
Dann poste mal deinen ea, dann kann man das ansehen
Btw, wieviele buffer hat der indicator? Was zweigt dieser im datenfenster an?Dann poste mal deinen ea, dann kann man das ansehen
Btw, wieviele buffer hat der indicator? Was zweigt dieser im datenfenster an?Ich habe den kompletten EA gerade oben gepostet - er macht im Grunde noch nichts, außer den Buffer abfragen und eben das funktioniert nicht. ^^
Der Indikator hat einen Buffer (#property indicator_buffers 1), er zeigt auch nichts im Datenfenster an. Er generiert nur ein Signal und stellt dieses optisch dar (Pfeil) und gibt es auch im Comment aus.
Das wird auch so in den Buffer geschrieben -> 0.0 = kein Signal, 1.0 = Buy, 2.0 = Sell.
Codesnippet Indicator (OnCalculate):
//buy signal if (signal=="buy" && lastsignal!=1) { if (InpShowSignals==true) { ObjectCreate(_Symbol,IntegerToString(Bars(Symbol(),Period())),OBJ_ARROW_BUY,0,TimeCurrent(),(PInfo[1].low)); } lastsignal=1; if (InpShowAlerts==true) { Alert("BUY Signal (" + TimeCurrent() + ")"); } ExtIndiBuffer[0]=1.0; } //sell signal if (signal=="sell" && lastsignal!=2) { if (InpShowSignals==true) { ObjectCreate(_Symbol,IntegerToString(Bars(Symbol(),Period())),OBJ_ARROW_SELL,0,TimeCurrent(),(PInfo[1].high)); } lastsignal=2; if (InpShowAlerts==true) { Alert("Sell Signal (" + TimeCurrent() + ")"); } ExtIndiBuffer[0]=2.0; } //kein signal if (signal=="---") { ExtIndiBuffer[0]=0.0; }
Danke Otto, hab's abgeändert! Ändert aber nichts daran, dass der Buffer keine Signale übermittelt.
Die Variable wirft den Wert 10 aus, sollte passen und damit gültig sein.
Danke Otto, hab's abgeändert! Ändert aber nichts daran, dass der Buffer keine Signale übermittelt.
Die Variable wirft den Wert 10 aus, sollte passen und damit gültig sein.
Ja, 10 ist ein gültiger Wert. -1 steht für WRONG_VALUE
Was sagt das Data-Window über deine Indikatorwerte? Wenn dort die richtigen Werte erscheinen ist das Problem beim EA.

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hallo zusammen,
ich hatte vor ein paar Tagen mal mit MQL5 angefangen und gestern meinen ersten Indicator geschrieben. Dieser greift auf 3 andere Indikatoren zurück, wertet die Werte aus und generiert dann einfach nur ein Signal. Das Signal wird einfach im Chart sowohl über Comment() angezeigt als auch über ein Objekt (Buy- / Sell-Arrow) über der entsprechenden Kerze. Das funktioniert alles wie's soll und auch im Tester ist es genauso, wie ich's haben möchte.
Nun wollte ich den Indikator schlicht in einem ExpertAdvisor einbinden und das klappt auch so weit ohne Fehler, allerdings lässt sich über den IndicatorBuffer kein Signal ermitteln. Der Buffer ist 0.0 wenn kein Signal vorliegt, 1.0 bei Buy und 2.0 bei Sell (schlicht & einfach ;-) - im ExpertAdvisor wird aber immer 0 angezeigt. Der Buffer ist im Indicator eingerichtet (Codesnippet Indicator):
bekommt die richtigen Werte zugewiesen und er zeigt auch die richtigen Werte an, wenn ich ihn über Comment ausgebe (Codesnippet Indicator) :
Im EA allerdings scheint irgendwas nicht richtig zu funktionieren - der Buffer ist immer 0. Hier der EA wie er gerade aussieht:
Hat ggf. jemand eine Idee woran das liegen könnte?
Lieben Dank für hilfreiche Antworten.