MetaTrader (MT) und InteractiveBrokers (IBKR)
Prolog:
Viele Trader würden gerne den MetaTrader mit einem IBKR Konto verwenden. Einfach sich ich in den MetaTrader einloggen,
wie in die TWS, die IBKR Marktdaten in den Charts sehen, ebenso ihre Orders, Positions- und Kontodaten.
Doch das ist leider nicht möglich. Das MetaTrader Konzept ist geschlossen. Es ist nicht dazu gedacht, andere
Broker als MT Broker anzuschliessen oder auch nur die Charts mit externen Daten zu füttern. Es gibt keine Daten-
und Broker API im MetaTrader.
Der Grund liegt im Geschäftsmodell von MetaTrader: Man verdient Geld mit einem künstlichen Spread. Dazu braucht
man die Kontrolle über die Daten, also kann es auch keine Datenschnittstelle geben.
Der Deal ist: Sie bekommen eine kostenlose, sehr mächtige Software (mit einer großen Community) und obendrein noch kostenlose
Marktdaten. Dafür handeln sie nur mit einem MetaTrader Broker. Dieser berechnet ihnen Kommissionen indirekt, eben über einen künstlichen
Spread. Für kleine Ordergrößen ist das auch ein attraktives Konzept.
Durch das variable Spread Modell skalieren die Kosten mit der Ordergröße. Unter anderem deswegen, wünschen sich viele Trader
den beliebten MetaTrader mit einem anderen Broker verwenden zu können, wie z.B. InteractiveBrokers..
Das ist auch ein Grund, warum viele MetaTrader Anwender, die die Software an sich mögen, lieber mit einem anderen Broker handeln würden.
IBKR ist bekannt für seine fairen Preise und guten Ausführungen. Schliesslich gibt es kein Dealing Desk.
Lösung:
Wie auch immer: Man kann die MT Charts nicht mit IBKR Daten füttern und man kann im MetaTrader auch nicht seine IBKR Orders, Ausführungen
oder Kontodaten anzeigen.
Es gibt aber doch einen Weg, den MT zu verwenden, um ein IBKR Konto zu handeln und zwar recht komfortabel. Denn es ist möglich alles mitzuverfolgen, was sich im MT
abspielt. Plaziert man bspw. eine Order, manuell oder durch einen Experten, kann dieses Ereignis in der integrierten Skript-Umgebung (Stichwort: .MQL) erfasst werden.
An dieser Stelle setzt die trade-commander.com Software an und hat prinzipiell 2 Lösungen, um den MT mit einem IBKR Konto zu verbinden.
Für beide Lösungen ist jedoch ein bestehendes MetaTrader Konto die Vorraussetzung. Das kann ein Live Konto sein, aber auch ein Demo Konto.
Voraussetzung: MetaTrade Broker Konto
MetaQuotes bietet ein kostenloses MetaTrader 5 Demo Konto an, mit kostenloses Forex Daten und ein paar Futures.
https://www.metaquotes.net/
Es gibt auch Broker, die ein Demo Konto auch für längere Zeit bieten, bspw. CMC Markets
https://www.cmcmarkets.com/
und andere. Der Google Gott hilft bestimmt weiter.
Viele Kunden haben bereits ein MT Live Konto und beantragen dann ein endlos Demokonto.
Soweit so gut. Wie ist aber nun die Verbindung zum IBKR Konto ?
Konkret:
Es gibt nun 2 Lösungen:
1. Der MTIB Kopierer:
Diese Software kopiert Orders die im MetaTrader für das MT Konto plaziert werden, zur TWS oder dem Gateway.
Dies geschieht ganz automatisch, ohne Programmierung. Die Software ist besonders geeignet, wenn man kommerzielle
Experten verwendet, auf deren Quellcode man keinen Zugriff hat. Wer nicht weiss, was gemeint ist, nicht schlimm.
Auch wer manuell handelt, kann den Kopierer produktiv einsetzen. Man kann wie gewohnt seine Orders aus dem Chart plazieren
und sie werden für das IBKR Konto kopiert.
Die Software muss einmal eingerichtet werden und immer laufen, wenn man Orders kopieren will.
2. Das IBPlugin
(Nicht verwirren lassen durch ‚TradeStation‘. Das IBPlugin kann auch im MetaTrader verwendet werden. Die Installation enhält ein MetaTrader Beispiel und eine Dokumentation)
Das ist ein Plugin, welches man in den MetaTrader lädt. Es richtet sich an Programmierer. Mit diesem Plugin kann man direkt aus einem .MQL Skript heraus ein IBKR
Konto handeln. Anders als beim Kopierer, muss keine Order für das MT Konto plaziert werden. Z.B. könnte man bei einem Moving Average Crossover, die Funktion:
long ticket=ibgORDER_SEND(…)
aufrufen, um eine entsprechende Order abzusetzen. Per Fallunterscheidung könnte man im Backtest Betrieb die MetaTrader Funktion
long ticket=OrderSend(…)
anstatt aufrufen und so die Möglichkeit haben, den Experten erstmal zu testen.
Auf diese Weise kann man den sehr mächtigen MetaTrader für ein IBKR Konto dienstbar machen.
Für beide Lösungen gilt:
– Es ist möglich die Ordersizes auf IBKR Seite hoch / runter zu skalieren. So könnte man kleinere Sizes auf dem MetaTrader Konto ausführen
und größere auf dem IBKR Konto.
– Man kann beliebige MetaTrader Symbole mit beliebigen IBKR Kontrakten verbinden, ob es Sinn macht oder nicht. (Z.B. könnten man ein MT CFD Kontrakt
an eine IBKR Aktie binden).
Schlusswort:
Jede der genannten Lösungen kann gestestet werden. Für den Kopierer bieten wir auch eine kostenlose Einrichtunghilfe per TeamViewer an.
Meist eine Angelegenheit von Minuten.
Für das Plugin werden einfache Beispiele mit installiert. Auch gibt es eine Dokumentation.
Pros:
+ Man kann den MetaTrader überhaupt für ein IBKR Konto verwenden
+ geringere Kosten bei IBKR
+ Man spart Kosten für ein Datenfeed, da kostenlos mit MetaTrader
+ Alles Vorzüge eines IBKR Kontos (z.B. kein Dealing Desk)
Cons:
– keine native Anbindung an MetaTrader
– keine IBKR Daten in MetaTrader Charts
– Für den Kopierer ein zusätzliches Delay, weil Orders erst vom MetaTrader Broker akzeptiert werden müssen, bevor sie kopiert werden können: ~ 70 ms.