Arbeiten mit Körben von Währungspaaren am Devisenmarkt

Andrei Novichkov | 4 Oktober, 2016


Einleitung

Jeden Tag lesen wir in Finanznachrichten von Weltmärkten solche Aussagen wie: "Der US-Dollar hat gegenüber den Weltwährungen an Wert verloren...". Dies bedeutet, dass sich der Zustand einer Währung gegenüber der Gruppe anderer Währungen geändert hat. Eine ständige Verwendung dieser "verbalen Formel" weckt den Wunsch, die Liste von Währungspaaren zu ordnen sowie eine gewisse Anzahl von Währungspaaren abzutrennen, und das möglicherweise mehrmals.

Die Gedanken und Vorschläge der Trader darüber, wie man Währungspaare in Gruppen oder "Körbe" aufteilen kann, werden nicht selten veröffentlicht. In Foren werden dazu Beiträge verfasst und Diskussionen darüber geführt, es wurde bereits eine Reihe von Werkzeugen entwickelt. Die Gruppierung in Körbe erfolgt zwecks einer genaueren Analyse des gemeinsamen Verhaltens der Währungspaare aus einem Korb. Es wird angenommen, dass solche Währungspaare sich ähnlich verhalten werden: Extrema ungefähr gleichzeitig erzeugen, sich in die gleiche Richtung in den meisten Fällen entwickeln. Eine solche Gruppe bzw. einen Korb von Währungspaaren kann man sogar als ein durchschnittliches virtuelles Währungspaar darstellen und damit arbeiten.

Grundsätze und Begriffe

Die Grundlage der Idee bildet die Umgruppierung von Währungspaaren nach den Merkmalen, die für den Trader wichtig sind. Einige solche Merkmale sind allen gut bekannt: z.B. die gegenseitige Abhängigkeit zwischen dem Ölpreis und dem Rubelkurs oder die Korrelation zwischen EURUSD und USDCHF. Für die Veranschaulichung könnte man sie in einer Gruppe aus zwei Paaren, im Folgenden Korb der Währungspaare oder einfach Währungskorb, vereinen. Sobald der Inhalt des Währungskorbs festgelegt wurde, kann man von Aktionen mit dem Korb und gleichzeitig mit allen Währungspaaren in diesem Korb (hier EURUSD und USDCHF) sprechen. Man kann das Verhalten der beiden Währungspaare beobachten und Transaktionen ausführen.

Der Kauf oder Verkauf eines Währungskorbs impliziert parallele Transaktionen mit jeder Währung des Korbs. In diesem Fall wird ein Orderkorb nach dem Prinzip "Ein Währungspaar — eine Order" zusammengestellt, dabei können die Orders auch entgegengesetzt sein. Die Bedingungen, bei der Änderung deren Transaktionen abgewickelt werden, charakterisieren den Zustand eines Währungskorbs.

Für die weitere Arbeit wenden wir das natürliche und offensichtliche Prinzip der Gruppierung von Währungspaaren an. Alle 28 Währungspaare werden nach der Basiswährung (oder Kurswährung) in Körbe aufgeteilt: diese Währung muss in jedem Währungspaar vorhanden sein. Der Korb wird nach der Basiswährung benannt (s. Tabelle 1). In diesem Fall wird der Zustand des Korbs durch den Zustand der Basiswährung bestimmt. Zu seinen Parametern gehören z.B. überkaufter/überverkaufter Zustand und andere ähnliche Charakteristika. Wir halten sie für die gleichen Werkzeuge der technischen Analyse, die wir für die Ermittlung des Zustandes gewöhnlicher Währungspaare verwenden.

Grundlegende Währungskörbe

Teilen wir den ganzen Pool der Währungspaare nach dem oben beschriebenen Prinzip. Wir bekommen acht Währungskörbe je sieben Währungspaare:

 Nummer Korbname Korbwährung Währungspaare des Korbs
1
Korb des australischen Dollars
AUD
AUDUSD, AUDNZD, AUDJPY, AUDCAD, AUDCHF, EURAUD, GBPAUD
2
Korb des kanadischen Dollars
CAD
USDCAD, AUDCAD, NZDCAD, GBPCAD, EURCAD, CADCHF, CADJPY
3
Korb des Frankens
CHF
CHFJPY, USDCHF, GBPCHF, EURCHF, AUDCHF, NZDCHF, CADCHF
4
Euro-Korb
EUR
EURUSD, EURJPY, EURCHF, EURGBP, EURNZD, EURCAD, EURAUD
5
Pfund-Korb
GBP
EURGBP, GBPAUD, GBPCAD, GBPCHF, GBPJPY, GBPNZD, GBPUSD
6
Yen-Korb
JPY
AUDJPY, CADJPY, CHFJPY, EURJPY, GBPJPY, NZDJPY, USDJPY
7
Korb des neuseeländischen Dollars
NZD
NZDUSD, AUDNZD, NZDJPY, NZDCAD, NZDCHF, EURNZD, GBPNZD
8
Dollar-Korb
USD
EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCAD, USDCHF, USDJPY

Tabelle 1.

Nach dem wir den Inhalt der Körbe festgelegt haben, präzisieren wir die wichtigsten Transaktionen mit den Körben. Gehen wir davon aus, dass der Kauf bzw. Verkauf eines Korbs den Kauf bzw. Verkauf seiner Währung bedeutet.

Betrachten wir das folgende Szenario. Nehmen wir an, es werden positive Nachrichten über den Yen veröffentlicht und man kann mit der Stärkung des Yens rechnen. Der Investor entscheidet sich, Yen zu kaufen. Im Rahmen des zu betrachtenden Paradigmas muss er für den Kauf des Yen-Korbs auf allen seinen Währungspaaren in SELL einsteigen. Und umgekehrt, wenn er den Yen-Korb verkaufen will, muss auf allen Währungspaaren des Korbs in BUY einsteigen.

Für den Euro-Korb sieht das ganze nicht so verwirrend aus. Wenn der Investor einen Euro-Korb kaufen will, steigt er auf allen Paaren des Korbs in Buy ein, und umgekehrt. Für den Euro und den Yen wird der Orderkorb aus gleich gerichteten Orders bestehen.

Um ein unnötiges Durcheinander mit Transaktionen zu vermeiden, erstellen wir die folgende Tabelle:

Nummer Korbname Transaktion mit der Korbwährung
Transaktion mit Währungspaaren des Korbs

1

Korb des australischen Dollars

 

AUDUSD AUDNZD AUDJPY AUDCAD AUDCHF EURAUD GBPAUD
SELL sell sell sell sell sell buy buy
BUY buy buy buy buy buy sell sell

2

Korb des kanadischen Dollars

 

USDCAD AUDCAD NZDCAD GBPCAD EURCAD CADCHF CADJPY
SELL buy buy buy buy buy sell sell
BUY sell sell sell sell sell buy buy

3

Korb des Frankens

 

CHFJPY USDCHF GBPCHF EURCHF AUDCHF NZDCHF CADCHF
SELL sell buy buy buy buy buy buy
BUY buy sell sell sell sell sell sell

4

Euro-Korb

 

EURUSD EURJPY EURCHF EURGBP EURNZD EURCAD EURAUD
SELL sell sell sell sell sell sell sell
BUY buy buy buy buy buy buy buy

5

Pfund-Korb

 

EURGBP GBPAUD GBPCAD GBPCHF GBPJPY GBPNZD GBPUSD
SELL buy sell sell sell sell sell sell
BUY sell buy buy buy buy buy buy

6

Yen-Korb

 

AUDJPY CADJPY CHFJPY EURJPY GBPJPY NZDJPY USDJPY
SELL buy buy buy buy buy buy buy
BUY sell sell sell sell sell sell sell

7

Korb des neuseeländischen Dollars

 

NZDUSD AUDNZD NZDJPY NZDCAD NZDCHF EURNZD GBPNZD
SELL sell buy sell sell sell buy buy
BUY buy sell buy buy buy sell sell

8

Dollar-Korb

 

EURUSD GBPUSD AUDUSD NZDUSD USDCAD USDCHF USDJPY
SELL buy buy buy buy sell sell sell
BUY sell sell sell sell buy buy buy

Tabelle 2. Transaktionen mit Körben

Zustand der Korbwährung

Wie wird die Entscheidung über die Ausführung einer Transaktion mit einem Währungskorb getroffen? Da die Körbe selbst relativ groß sind, ist es schwierig, diese Entscheidung nur anhand ihres Verhaltens zu treffen. Wir benötigen zusätzliche technische Daten über die Parameter des Zustands der Korbwährung. Schauen wir auf den Chart des RSI Indikators für drei Währungspaare aus dem Pfund-Korb nämlich GBPUSD, GBPJPY und GBPCHF. Auf dem Bild ist der Chart mit D1 dargestellt:


Es ist ganz einfach, die Ähnlichkeit dieser drei Charts zu merken: viele Extrema haben die gleiche Lage, die Abstände zwischen Hochs und Tiefs sind auch ähnlich. Es drängt sich die Vermutung auf, dass sich diese Ähnlichkeit durch die gleiche Korbwährung, den britischen Pfund, erklären lässt. Die Abwertung des Pfunds führt zur Erscheinung absteigender Abschnitte, die Stärkung der Währung - ansteigender Abschnitte.

Die Unterschiede zwischen allen drei Charts lassen sich durch verschiedenes Verhalten der Währungen erklären. In diesem Fall kommt ihr Einfluss durch das Auftreten "überflüssiger" lokaler Extrema, verschiedene Gradiente absteigender und ansteigender Bewegungen sowie lokale Richtungsänderungen zum Tragen.

Nachdem wir festgestellt haben, wie sich der für alle Währungspaare gemeinsame Parameter berechnet wird, und Unterschiede zwischen den Währungspaaren nivelliert haben, lösen wir die Hauptaufgabe: wir visualisieren diesen Paramter. In diesem Beispiel wird der überkaufte/überverkaufte Zustand des Pfunds, ein "vereinigter RSI", der nicht den Zusatand eines Währungspaars anzeigt (wie es Trader gewohnt sind), sondern nur einer Währung - der Korbwährung, zu diesem Parameter.

Man kann sich natürlich nicht auf RSI beschränken. Es können auch andere ähnliche Indikatoren vorhanden sein, die anhand Standardindikatoren berechnet wurden. Bezeichnen wir solche Indikatoren als "vereinigte Indikatoren".


Berechnungsmethode für Zustandsparameter der Korbswährung

Um diese Aufgabe zu lösen, erinnern wir uns an die bereits bestehenden Methoden und versuchen wir, ähnlich zu handeln. Das erste, woran man sich in dieser Hinsicht erinnert, ist der Dollar-Index. Wie wir wissen, zeigt er den Zustand des Dollars gegenüber den sechs anderen Weltwährungen. Schauen wir uns die Berechnungsformel an. Das ist das geometrische Mittel mit Gewichtungskoeffizienten. Versuchen wir, dieses Prinzip auf den Dollar-Korb zu übertragen, d.h. verwenden wir unseren eigenen Set der Währungspaare. Löschen wir die Gewichtungskoeffizienten und reduzieren wir die Formel auf die Berechnung des geometrischen Mittels. Wir nehmen diese Änderungen vor, um das Prizip des geometrischen Mittels für die Berechnungen in allen Körben anzuwenden. In der Praxis werden die Gewichte auf allen Währungspaaren unbekannt sein.

Überprüfen wir, wie stark die Auswirkung der vorgenommenen Änderungen sein wird. Verwenden wir den einfachsten Indikator dafür:

#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#property strict

#property indicator_separate_window
#property indicator_buffers 1

input int     iBarsTotal=300;       

string pair[]={"EURUSD","GBPUSD","AUDUSD","NZDUSD","USDCAD","USDCHF","USDJPY"};
bool bDirect[]={false,false,false,false,true,true,true};
int iCount=7;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double GetValue(int shift)
  {
   double res=1.0,t;
   for(int i=0; i<iCount; i++)
     {
      t=iClose(pair[i],0,shift);
      if(!bDirect[i]) t=1/t;
      res*=t;
     }//end for (int i = 0; i < iCount; i++)
   return (NormalizeDouble(MathPow (res, (double)1/iCount), _Digits) );
  }

double upp[];
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int OnInit()
  {
   IndicatorShortName("testBasket");
   IndicatorDigits(_Digits);
   SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2,clrGreen);
   SetIndexBuffer(0,upp);
   SetIndexLabel(0,"testBasket");

   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   if(prev_calculated==0)
     {

      int total;
      if(iBarsTotal==0) total=rates_total;
      else total= MathMin(iBarsTotal,rates_total);
      for(int i = 0; i<total; i++) upp[i] = GetValue(i);
     }//end if (prev_calculated == 0)
   else
     {
      upp[0]=GetValue(0);
     }
   return(rates_total);
  }

Zum Vergleich wurde der kostenlose Indikator USDX.mq4 verwendet, der den US-Dollar-Index auf klassische Art zeichnet. Das Ergebnis (Zeitrahmen H1):


Auf dem Bild ist der Chart des testBasket.mq4 Indikators in dunkelgrün und der USDX.mq4 Indikator in rot und hellgrün dargestellt. Es lässt sich eine gute Übereinstimmung auf H1 erkennen. Man sieht, dass die Bewegungsrichtungen in den meisten Abschnitten übereinstimmen, wir die meisten lokalen Extrema.


Auf dem Tageszeitrahmen sieht das Bild nicht so günstig aus, ist aber immer noch akzeptabel. Die Lage der meisten lokalen Extrema ist gleich, genauso wie die Bewegungsrichtung auf den meisten Abschnitten. Unterschiede an einigen Stellen lassen sich ganz einfach erklären: keine Gewichtungskoeffizienten und andere Währungspaare. Darüber hinaus kommen die Unterschiede in den Maßstäben der Grafiken, die aufeinander gelegt wurden, zum Tragen.

Anhand der erzielten Ergebnisse können wir die Formel für die Berechnung des geometrischen Mittels auch für die Berechnung verschiedener Zustandsparameter der Korbwährung akzeptieren. Weiter werden wir diese als Methode Nr. 1 bezeichnen. Man darf aber auch die Beschränkungen der Formel nicht vergessen: es wäre eine schlechte Idee, diese Formel für Berechnungen mit Argumenten anwenden, die negative Werte annehmen können. Wie wir wissen, sind solche unter technischen Indikatoren nicht selten. Darüber hinaus können die Berechnungen des geometrischen Mittels das Terminal stark belasten, wenn diese nicht in einer separaten Bibliothek sind.

Um die Beschränkungen für die Verwendung negativer Werte als Argumente zu beheben, kann man eine andere Formel benutzen, z. B. die Formel des einfachen arithmetischen Mittels. Erstellen wir noch einen Testindikator für die Berechnungen nach dieser Formel, als Argumente werden Werte des Stochastic Indikators verwendet:

#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#property strict

#property indicator_separate_window
#property indicator_minimum    0
#property indicator_maximum    100

#property indicator_buffers 2

input int     iBarsTotal=3000;

string pair[]={"EURUSD","EURJPY","EURCHF","EURGBP","EURNZD","EURCAD","EURAUD"};
int iCount=7;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void GetValue(int shift,double &s1,double &s2)
  {
   s1=0; s2=1;
   for(int i=0; i<iCount; i++) 
     {
      s1 += iStochastic(pair[i],0,5,3,3,MODE_SMA,0,0,shift);
      s2 *= iStochastic(pair[i],0,5,3,3,MODE_SMA,0,0,shift);
     }
   s1 = NormalizeDouble(s1/iCount, _Digits);
   s2 = NormalizeDouble(MathPow (s2, (double)1/iCount), _Digits);
  }

double upp[],upp1[];
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int OnInit()
  {
   IndicatorShortName("testBasketS");
   IndicatorDigits(_Digits);
   SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2,clrRed);
   SetIndexBuffer(0,upp);
   SetIndexLabel(0,"testBasketSA");
   SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,2,clrGreen);
   SetIndexBuffer(1,upp1);
   SetIndexLabel(1,"testBasketSG");

   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   if(prev_calculated==0)
     {

      int total;
      if(iBarsTotal==0) total=rates_total;
      else total= MathMin(iBarsTotal,rates_total);
      for(int i = 0; i<total; i++) GetValue(i,upp[i],upp1[i]);
     }//end if (prev_calculated == 0)
   else
     {
      GetValue(0,upp[0],upp1[0]);
     }
   return(rates_total);
  }

Starten wir diesen Indikator auf dem Tageschart von EURGBP. Das Ergebnis:


Auf dem Bild ist die Grafik des originellen Stochastic Indikators mit dünnen Linien dargestellt, die dicke rote Linie — der neue vereinigte Stochastic Indikator, der nach der Formel für die Berechnung des arithmetischen Mittels berechnet wurde, und die dicke grüne Linie - die Formel für die Berechnung des geometrischen Mittels und wurde zum Vergleich angeführt.

Anhand der Formeln kann man die Schlussfolgerung ziehen, dass diese sehr ähnliche Ergebnisse liefern. Die Grafik, die mithilfe des geometrischen Mittels gezeichnet wurde, weist stark ausgeprägte Extrema auf, und mithilfe des arithmetischen Mittels - einen geglätteten Charakter. Wobei das eine subjektive Meinung ist. Für eine konkrete Anwendung werden die Beschränkungen entscheidend sein, die mit dem Vorhandensein negativer Argumente und der Leistungsstärke des PCs verbunden sind. Im Allgemeinen kann man die Formel für die Berechnung des arithmetischen Mittels als die Methode Nr. 2 verwenden.

Die ersten Schlussfolgerungen

Nach dem Lesen der vorherigen Absätze kommt ungewollt die Frage: "Aber wozu all das?". Wir haben einen neuen Indikator bekommen, der einen Chart zeichnet, welcher einem Dollar-Index-Chart ähnelt und einen anderen, welcher dem Chart des Stochastic Indikators ähnlich ist. Man kann noch einen weiteren Indikator bekommen, der einen Chart zeichnet, welcher einem klassischen RSI ähnlich ist. Aber Trader haben bereits RSI und Stochastic, wozu brauchen sie ähnliche Indikatoren, was macht man damit? Versuchen wir diese Frage zu beantworten.

  1. Denken wir daran, dass vereinte Indikatoren dem Trader Informationen über den Zustand der Korbwährung geben und damit es ermöglichen, die Entwicklung aller Währungpaares des Korbes vorherzusagen. Eine solche Prognose erlaubt Transaktionen mit allen Währungspaaren des Korbs abzuwickeln.
  2. Achten Sie darauf, dass die Kombination aus vereinigten Indikatoren mit den gleichen klassischen, wie auf dem letzten Bild mit dem Stochastic Indikator, dem Trader einen Filter bietet. Der Filter ermöglicht es, auf den Einstieg auf bestimmten Währungspaaren des Korbs zu verzichten, Schnittpunkte der Charts zu analysieren und Divergenzen festzustellen.
  3. Vergessen wir nicht, dass bei der Bildung des Diagramms zwei Währungen verwendet werden, jede von deren eine Währung ihres Korbs ist. Der Trader kann für jedes von ihnen Daten über den Zustand bekommen, wenn er die vereinten Indikatoren verwendet. Aufgrund dieser Tatsache kann man schon Schlussfolgerungen über weitere Aktionen ziehen.

Jeder aus diesen Punkten kann als Grundlage für die Erstellung eines gewinnbringenden Handelssystems. Darüber hinaus kann man vereinigte Indikatoren in bereits fertige Handelssysteme hinzufügen. Dieses Thema läuft aber über die Grenzen des vorliegendes Artikels hinaus, welcher dem Leser das Prinzip vorstellen will, wenn er ihm noch nicht bekannt war.


Fazit

Vergessen Sie nicht, die Entscheidung über den Markteinstieg bzw. — ausstieg sollte anhand mehrerer Signale getroffen werden, wenn es sich nicht um das Trading ohne Indikatoren handelt. Dieser Artikel erläutert die Methode zum Erhalten solcher Signale auf eine neue Weise, was aber auf keinem Fall die Verwendung von Standardmitteln abschafft oder ersetzt. Eine gemeinsame Anwendung der vereinigten RSI, Stochastic und anderen Indikatoren zusammen mit Standardindikatoren kann die notwendige Qualität und Quantität von Signalen für die Bestätigung oder Ablehnung einer Transaktion und das Erzielen von Gewinnen gewährleisten.