ICHIMOKU-STRATEGIE - Seite 2

 

Ich habe die Kodierung ein wenig "vereinfacht" und mit dem Testen der Strategie begonnen.

//+------------------------------------------------------------------+
//|                                              ICHIMOKU_SIMPLE.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

extern double Lots = 1.0;
extern double Tenkan = 9;
extern double Kijun = 26;   
//----
int start()
   {
   double tenkan_sen;
   double kijun_sen;
   int ticket;
  
// check for long position (BUY) possibility
      if(tenkan_sen>kijun_sen)
         {
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+Point,"ichimoku",16384,0,Green);
         if(ticket>0)
            {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
            }
         else Print("Error opening BUY order : ",GetLastError()); 
         return(0); 
         
         }   //  added by RaptorUK
            
   // SELL 
     {
      OrderSelect(SELECT_BY_POS, MODE_TRADES);
      if(OrderType()<=OP_SELL && // check for opened position 
         OrderSymbol()==Symbol()) // check for symbol
         {
         if(OrderType()==OP_BUY) // long position is opened
            {
            // should it be closed?
            if(tenkan_sen<kijun_sen)   //  removed surplus (  RaptorUK
               {
               OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position
               return(0); // exit
               }
            }
         }
      }
  return(0);
   }

Der Strategietest zeigt, dass die Modellierungsqualität 90% beträgt und keine Fehler im Journal vorhanden sind.

Im Journal steht: 2012.01.18 20:29:44 ICHIMOKU_F1 GBPCHF,H1: erfolgreich geladen
2012.01.18 20:29:47 ICHIMOKU_F1 Eingaben: Lots=1; Tenkan=9; Kijun=26;

Es wurden jedoch keine Geschäfte getätigt, und daher gab es auch keine Ergebnisse.

Könnte es ein Problem mit dem Code geben?

 
RaptorUK:

Sie initialisieren diese Variablen, geben ihnen aber keine Werte. . .

. . . so wird der Test immer falsch sein. Dieser EA wird niemals einen Auftrag erteilen.

Haben Sie meinen früheren Beitrag übersehen?
 
Ich denke schon, entschuldigen Sie bitte. Aber ist es in diesem Fall nicht ein wenig ungewöhnlich, da der Tenkan-Sen und der Kijun-Sen bei jeder eröffneten Order unterschiedliche Werte haben werden. Das würde also bedeuten, dass die Werte nicht angegeben werden können. Die einzige Eigenschaft, die bei jeder eröffneten Order gleich wäre, ist der Wert des tenkan-sen, der höher ist als der Wert des kijun-sen.
 
ToBa:
Ich denke schon, entschuldigen Sie bitte. Aber ist es in diesem Fall nicht etwas ungewöhnlich, da der Tenkan-Sen und der Kijun-Sen bei jeder eröffneten Order andere Werte haben.

Aber Sie erhalten nicht die Werte, die sich mit jedem neuen Takt ändern ... Sie deklarieren die Variablen und setzen sie nie ... also ändern sie sich nie, haben Sie erwartet, dass sie sich durch Magie ändern?

 
ToBa:

Ich habe die Kodierung ein wenig "vereinfacht" und mit dem Testen der Strategie begonnen.

Der Strategietest zeigt, dass die Modellierungsqualität 90% beträgt und das Journal keine Fehler enthält.

Das Journal sagt: 2012.01.18 20:29:44 ICHIMOKU_F1 GBPCHF,H1: erfolgreich geladen
2012.01.18 20:29:47 ICHIMOKU_F1 Eingaben: Lots=1; Tenkan=9; Kijun=26;

Es wurden jedoch keine Geschäfte getätigt, und daher gab es auch keine Ergebnisse.

Könnte es ein Problem mit dem Code geben?


"vereinfacht" Warum dieser Weg....

Wenn Sie tenkan-sen und kijun-sen die richtige Kodierung gegeben haben, um ihren Wert zu erhalten, und Sie setzen sie in diese

dann erhalten Sie jeden Tick tenkan_sen>kijun_sen einen neuen Handel

Wie viele Trades wollen Sie offen haben?

 
deVries:


"vereinfacht" Warum auf diese Weise....

Wenn Sie tenkan-sen und kijun-sen die richtige Kodierung gegeben haben, um ihren Wert zu erhalten, und Sie setzen sie in diese

dann werden Sie jeden Tick tenkan_sen>kijun_sen einen neuen Handel erhalten

Wie viele Trades wollen Sie offen bekommen?


Ziel ist es, eine einzelne offene Order (1,0 Lot) zu platzieren, sobald der Tenkan-Sen größer als der Kijun-Sen ist, und die Position zu halten, bis der Tenkan-Sen kleiner als der Kijun-Sen ist.
 
ToBa:

Ziel ist es, eine einzelne offene Order (1,0 Lot) zu platzieren, sobald der Tenkan-Sen größer als der Kijun-Sen ist, und die Position zu halten, bis der Tenkan-Sen kleiner als der Kijun-Sen ist.
Woher beziehen Sie diese Werte?
 
RaptorUK:
Woher bekommen Sie diese Werte?
Ich bin mir nicht ganz sicher, was Sie meinen. Im MACD-Beispiel sah es so aus, als wäre es in Ordnung: if(MacdCurrent<0 && MacdCurrent>SignalCurrent && MacdPrevious<SignalPrevious &&

MathAbs(MacdCurrent)>(MACDOpenLevel*Point) && MaCurrent>MaPrevious) und es werden keine Werte angegeben.

 
Ok, jetzt verstehe ich endlich, was Sie meinen. Allerdings habe ich keine Ahnung, wie ich die Werte abrufen kann.
 
ToBa:
Ok, jetzt verstehe ich endlich, was Sie meinen. Allerdings habe ich keine Ahnung, wie ich die Werte abrufen kann.
Gut, das ist ein Fortschritt :-)