Einzelnen Beitrag anzeigen
  #2 (permalink)  
Alt 13.09.10
der_peter der_peter ist offline
Neues Mitglied
 
Registriert seit: Sep 2010
Beiträge: 3
der_peter befindet sich auf einem aufstrebenden Ast
Standard

also, meine lösung sieht so aus, dass ich nach erreichen von trailingstop 1 einen engeren trailingstop setze, ist nämlich nicht so toll, wenn der kurs die 45 pips erreicht hat und dann wieder um 44 zurückfällt.
im programmkopf steht folgendes:

extern int TrailingStop =45;
extern int T2Stop = 5;//enger trailingstop bei erreichen trailingstop 1

die berechnung des TS erfolgt wie unten.

// trailingstop berechnen im beispiel wird bei erreichen von 45 punkten TS1 auf T2Stop gesetzt, d.h., bei rückfall um mehr als 5 pips wird verkauft:



for(cnt=0;cnt<ordermax+20;cnt++)
{OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

// long position geöffnet????????????
{if(OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)==true)



// trailingstop für long
{if(OrderType()==OP_BUY)
if(Bid-OrderOpenPrice()>Point*TrailingStop)
if((OrderStopLoss()<Bid-Point*T2Stop) &&(OrderStopLoss()>1))
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*T2Stop,OrderTakeProfit(),0,Red);






//trailingstop für short
if(OrderType()==OP_SELL)
if((OrderOpenPrice()-Ask)>Point*TrailingStop)
if(OrderStopLoss()>(Ask+Point*T2Stop) &&(OrderStopLoss()>1))
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Poi nt*T2Stop,OrderTakeProfit(),0,Red);
}}}


/**/

hoffe, dass es geholfen hat