Trailing-Fonds-Funktion (Aktien) - hat jemand eine fertige Funktion gefunden? - Seite 5

 

Vitalya_1983 danke, stieß einen blinden Mann. =) Ich werde es ausprobieren.

Die Option mit dem Prozentsatz ist allerdings nicht ideal: Je mehr Gewinn erzielt wird, desto weniger wird für den Rollback festgelegt.

Und ich möchte die Lösung, von der der Themenstarter gesprochen hat:

ЗЫ: вот собственно то, о чем говорил, про "на издохе движения", и как раз в такие моменты хорошо иметь тралл под рукой..

D.h. eine Klinke auf den Gewinn, damit das Angebot an xrust steht.
 
ToKa_TuXa >> :

xrust - Ich habe einen Vorschlag an Sie - können Sie den Code Ihrer Version des Equity Trawl als eigenständigen EA bringen.

Es wäre ein sehr nützliches Instrument für Handeltreibende.

Ich bin schon lange auf der Suche nach einem solchen Werkzeug, habe aber nichts Geeignetes gefunden.

Das wäre großartig...

 

Ich werde...

 

Сделаю...

Vielen Dank im Voraus =)

 
xrust >> :

>> Ich werde...

Warten ...

 

xrust - bitte geben Sie mir einen Hinweis auf den Zeitplan.

Vielleicht hat jemand eine Lösung und ist bereit, sie aus reiner Herzensgüte mitzuteilen?

 
ToKa_TuXa писал(а) >>

xrust - bitte geben Sie mir einen Hinweis auf den Zeitplan.

Vielleicht hat jemand eine Lösung und ist so freundlich, sie mitzuteilen?

//+------------------------------------------------------------------+
//|                                           EqutyTrawlerXR_V00.mq4 |
//|                                 Copyright © 2009, XrustSolution. |
//|                                        http://www.xrust.ucoz.net |
//+------------------------------------------------------------------+
#property copyright "#Copyright © 2009, XrustSolution.#"
#property link      "#http://www.xrust.ucoz.net#"
extern double       EqutyPersent      =   1;
extern double       RepeatTimeinSec   =   1;
//+------------------------------------------------------------------+
void start(){double step=1;
  if( RepeatTimeinSec==0){ RepeatTimeinSec=0.1;}
  while(!IsStopped()&&IsExpertEnabled()){
    Sleep(1000* RepeatTimeinSec);
    if(AccountEquity()>AccountBalance()){
      if(AccountProfit()>AccountEquity()/100* EqutyPersent* step){ step++;}
      if( step>1){
        if(AccountProfit()<=AccountEquity()/100* EqutyPersent*( step-1)){
          CloseAll();
        }
      }
    }
  }
return;}
//+------------------------------------------------------------------+
// Закрывает все ордера на данном инструменте                        |
//+------------------------------------------------------------------+
void CloseAll(){
for(int n=OrdersTotal()+1; n>=0; n--){
  if(OrderSelect( n, SELECT_BY_POS, MODE_TRADES)){ 
    if(OrderType()<2){ 
      del(OrderTicket());
    }  
  }    
}  
return;    
}
//+------------------------------------------------------------------+
//Удаляет рыночный ордер с указанным ей тикетом                      |
//+------------------------------------------------------------------+
void del(int ticket){int err;
for(int i=0; i<1; i++){
   GetLastError();//обнуляем ошику
   OrderSelect( ticket, SELECT_BY_TICKET, MODE_TRADES);
   string symbol = OrderSymbol();
   if(OrderType()==OP_BUY){RefreshRates();
     double prise = MarketInfo( symbol,MODE_BID);
     if(!OrderClose( ticket,OrderLots(), prise,3,Green)){ err = GetLastError();}}
   if(OrderType()==OP_SELL){RefreshRates();
     prise = MarketInfo( symbol,MODE_ASK);
     if(!OrderClose( ticket,OrderLots(), prise,3,Green)){ err = GetLastError();}}
if( err == 0){PlaySound("expert.wav");break;} 
if( err != 0){PlaySound("timeout.wav");Print("Error for Close Funtion =", err);} 
while(!IsTradeAllowed()){Sleep(5000);}// если рынок занят то подождем 5 сек 
if ( err==146) while (IsTradeContextBusy()) Sleep(1000*11);
} 
}
 
Danke, Rust, ich werde mich darum kümmern.
 
Fahren Sie es gut - sehen Sie es sich an
 

Danke, wir werden es testen...

Nur ein paar Vorschläge:

1. Hinweis hinzufügen: max. Gewinn/Verlust;

2. Wenn Sie eine Schleppnetzoption mit einem bestimmten Niveau in $ hinzufügen möchten, können Sie nicht %, sondern den Abstand vom maximalen Gewinn zum Stopp in Geld festlegen.

Lassen Sie mich versuchen, die Nachteile des prozentualen Ansatzes zu erklären: Sie haben 20 Positionen mit kleinen Lots - der Gesamtgewinn für 24 Stunden beträgt 300 $. Wenn wir z.B. 30% (in der Tat - jede) Ebene, dann im Falle von Pullback erhalten wir $200 - $100 in vorbei. Wenn wir ein festes Niveau hätten, sogar 50, hätten wir 50$ mehr.

Manch einer mag sagen: Mit einem festen Niveau käme man nicht auf 300, aber mit einer kleinen Anzahl gleichgerichteter Instrumente ist es wahr. Bei der verpackten Strategie wächst der Gewinn gleichmäßig, ohne große Drawdowns, und eine gravierende Änderung des Zeichensatzes deutet auf eine Umkehrung hin. Also, wir sollten aus ihm herausspringen, ohne zu warten, bis die Umkehrung (die in der Regel schnell ist) frisst ein % der bestanden.

Verzeihen Sie das viele Kauderwelsch, mit der Hoffnung auf "got it" ; )