Also das ist eigentlich nur die void OnTick(), in der alles läuft. Sollte ja erstmal nur zum Testen gehen. Deshalb gibts da auch kaum Code.
// Instanz von Ctrade CTrade trade; int run = 0; int run2 = 0; void OnTick() { // Ask Preis berechnen double ask = SymbolInfoDouble(_Symbol,SYMBOL_ASK); // Bid Preis berechnen double bid = SymbolInfoDouble(_Symbol,SYMBOL_BID); double bid2 = bid * 1.01; // Erhöhung um ca. 1% if(run == 0) { // Anzahl, auf aktuellem Chart, zum ask-Preis, S/L , T/P, comment trade.Buy(1, NULL, ask ); run++; } if(run2 == 0) { trade.Sell(1, NULL, bid2 ); run2++; } }
Es soll ja erstmal zum Test nur 1x gekauft (ask) werden und dann bei Erhöhung um ~1% verkauft (bid2) werden. Aber das klappt ja schon leider nicht so recht.
Als Test hatte ich "run2++" auskommentiert. Dann wurde richtigerweise eine Aktie gekauft, aber 999999999 verkauft.
Ich habe es mit meinem Demokonto in Echtzeit getestet. Im Chart als Comment stehen die Daten, die so auch erfüllt wurden. Kauf war bei 3225,01, aktuell ist der Kurs bei 3226,00 und verkauft werden soll bei 3225,74.
Das ist auch alles so eingetreten. Aber wie im Bild unten zu erkennen unter Werkzeuge>Handel, verschwinden die Positionen nicht. Wenn ich eine Aktie mit Buy und T/P anlege, verschwindet diese Aktie aus dem Fenster Werkzeuge>Handel. Das ist das Problem. Die Aktie ist also nicht "abgeschlossen" oder so.
Mit Deinem Code schließt Du keine Position, Du öffnest ein Buy und ein Sell.
Schau Dir einfach die Beispiele an im Verzeichnis \Experts\Examples\ wie die dort mit Öffnen und Schließen umgehen.
Auf Nettigkonten gibt es je Symbol nur eine Position, da würde Dein Code die offene Position schließen, auf Hedgekonten bleiben beide offen, bis sie jew. geschlossen werden. Schau Dir Beispiele an im o.a. Ordner oder auch in der CodeBase.
Da gibt es viele intelligente Lösung von Leuten mit viel Erfahrung, von denen man viel schnell lernen kann!
Hier ist ein Artikel über hedging: https://www.mql5.com/de/articles/2299
Aber such selber 'mal nach hedging account: https://www.mql5.com/de/search#!keyword=hedging%20account
- www.mql5.com
Hast du vllt. einen konkreten Link zu einem Tutorial, wo Positionen geöffnet, gekauft, verkauft und wieder geschlossen werden?
- 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 @community,
wenn ich mit ExpertAdvisor einen trade.buy im Format
erstelle, wird eine Position gekauft und bei Erreichen des T/P verkauft.
Will ich das ganze aber händisch realisieren, also mittels
und
verschwindet im MT5 im Fenster "Werkzeuge", dort im Tab "Handel" die Position nicht. Der Wert für SELL (also mein bid2) wird aber erreicht. Somit sollte doch Buy und Sell abgeschlossen sein ?!? Ich muss jedoch die Einträge BUY und SELL immer händisch schließen. Kann das so richtig sein?