Chiusura delle posizioni. Segnale indicatore acceso. - pagina 6

 
 

Non credo che sia nel codice. Ed ecco perché. Il codice è semplice. Ma non è questo il punto. Si tratta di questo:

if(OrderProfit() > tp)    { OrderClose(OrderTicket(),OrderLots(),Ask,3,Green);  }

Supponiamo che tp=49. Con lotto=0.1, la posizione sarà chiusa quando il profitto =50 pip. Allora aumentiamo il lotto da 0,1 a 0,2. Cosa otterremo in questo caso?

Il lotto è raddoppiato e otterremo il profitto tp=50 due volte più velocemente. È sufficiente che il prezzo passi nella nostra direzione, solo 25 pips! Il lotto raddoppiato ci dà un totale di 50! E naturalmente la posizione sarà chiusa! Una cosa simile accadrà in una zona perdente con la variabile "-sl". Quindi l'EA funzionerà in modo abbastanza diverso, non nel modo in cui è stato originariamente previsto...

Ora sorge un'altra domanda. Come portare la dimensione della variabile "tp" in corrispondenza con la dimensione mutevole del lotto? Quindi i valori di OrderProfit() cambiano proporzionalmente alla dimensione del lotto?

 
Sì, OrderProfit() non l'avevo notato. Dovrebbe essere diviso per dimensione del lotto.
 
Fatto. Grazie. È lavorare....
 

Il problema si è ripresentato. È in mezzo al nulla. Da dove non me l'aspettavo... Ho affrontato un bisogno urgente (al fine di partecipare al concorso) di utilizzare una piccola dimensione di lotto nel mio Expert Advisor, = 0,01.

Ma la libreria di calcolo B-lots I.Kim's USED non prevede una tale dimensione, perché contiene la seguente linea

se (dLot<0,1) dLot=0,1;

Senza pensarci due volte, ho cambiato la linea nel modo seguente: if (dLot<0.01) dLot=0.01; Ho impostato Lots=0.01 in Properties.

Ma con mia sorpresa (senza motivo apparente) il lotto rimane uguale a =0,1 ! Ho provato in entrambi i modi! - Non funziona niente! Per favore, chi sa come prevedere il lavoro della biblioteca da lotto=0.01, consigli.

//|                                                       b-Lots.mqh |
//|                                           Ким Игорь В. aka KimIV |
//|  21.12.2005  Библиотека функций расчёта размера лота.            |
 
//------- Внешние параметры модуля -----------------------------------
extern string _Parameters_b_Lots = "---------- Параметры модуля расчёта лота";
extern int LotsWayChoice  = 0;    // Способ выбора рабочего лота:
extern double Lots        = 0.01;  // Фиксированный размер лота
extern int LotsPercent    = 10;   // Процент от депозита
extern int LotsDeltaDepo  = 200;  // Коэффициент приращения депозита
extern int LotsDepoForOne = 500;  // Размер депозита для одного минилота
extern int LotsMax        = 1000; // Максимальное количество минилотов
//+------------------------------------------------------------------+
//| Главная функция получения размера лота (вызывается из советника) |
//+------------------------------------------------------------------+
double GetSizeLot(){
  double dLot;
  if (LotsWayChoice==0) dLot=Lots;
 
  // фиксированный процент от депозита
  if (LotsWayChoice==1)
  {    dLot=MathCeil(AccountFreeMargin()/10000*LotsPercent)/10;  }
 
  // фракционно-пропорциональный
  if (LotsWayChoice==2)  { 
    int k=LotsDepoForOne;
    for (double i=2; i<=LotsMax; i++)    {
      k=k+i*LotsDeltaDepo;
      if (k>AccountFreeMargin())
      {        dLot=(i-1)/10; break;      }
    }
  }
 
  // фракционно-фиксированный
  if (LotsWayChoice==3)
  {    dLot=MathCeil((AccountFreeMargin()-LotsDepoForOne)/LotsDeltaDepo)/10;  }
 
  if (dLot<0.01) dLot=0.01;
  
  return(dLot);
}
 
Prima di tutto, controllate la dimensione minima consentita dei lotti con Marketinfo() sul conto attualmente loggato.
MODE_MINLOT - se è più di 0,01, il tester non funzionerà con volumi di 0,01.
 

Grazie. Il conto è autorizzato a lavorare con lotto=0,01.

Capito. Funziona...

 

Ciao a tutti da un "manichino".

Ho appena iniziato a imparare MQL, sto analizzando e modificando attentamente la ben nota media mobile. Qualcuno può darmi un consiglio?

Come posso suggerire di aprire l'affare non all'apertura di una nuova barra ma al momento in cui МА tocca il rimbalzo (approccio dall'alto - comprare, approccio dal basso - vendere)?

Ed è possibile fare lo stesso da un altro oggetto, per esempio una linea di tendenza?

 
Credo di aver visto un esperto come questo da qualche parte. Guarda qui - http://www.metatrader4.com/ru/forum/4736/
 

Buon pomeriggio a tutti. Volevo aprire un nuovo thread, ma poi ho deciso di porre la domanda qui, nel mio thread... Vorrei conoscere l'opinione dei presenti su tale questione. "Ho costruito (come meglio potevo) un Expert Advisor. Funziona nel tester in modo tale che è uno spettacolo per gli occhi! Non potevo credere ai miei occhi! Dopo diversi giorni di lavoro con un lotto fisso = 0,1 l'Expert Advisor può aumentare il deposito diverse volte! Non ho nemmeno inserito il blocco MM. Perché? Ho pensato che "troppo buono non è neanche buono..."!

L'Expert Advisor lavora senza indicatori, secondo la logica matematica, e al posto del trawl c'è un ordine pendente fluttuante. Questi sono approssimativamente i risultati, inclusi quelli fuori campione, mostrati dall'Expert Advisor



28.01.2008 - 08.02.2008, lotto=0,1 (fisso), tf=1min

Qualità della modellazione 25.00%, Errore di corrispondenza del grafico 0

Deposito iniziale 1000.00

Utile netto 21904.31

Redditività 1,86 Payoff atteso 4,03

Drawdown assoluto 4,64 Drawdown massimo 656,18 (10,19%) Drawdown relativo 10,19% (656,18)

Totale scambi 5433

Operazioni redditizie (% di tutte) 2278 (41,93%)

Il più grande trade redditizio 75,46 trade perdente -11,93

Media delle operazioni redditizie 20,81 delle operazioni perdenti -8,09

Di sicuro, mi sono sfregato le mani e, dopo aver aspettato a stento il lunedì, ho "caricato" l'Expert Advisor online sul conto demo. Ed è allora che ho scoperto che il mio Expert Advisor sta perdendo soldi online....! Naturalmente ci sono periodi di lavoro stabile e redditizio, ma nel complesso è un lento prosciugamento...

Ho iniziato a indagare. Si è scoperto che il tester modula i tick lisciati all'interno di barre di un minuto, cioè molto meno "pungenti" dei tick in arrivo nella modalità online. Dato che l'Expert Advisor è chiaramente un pipsewise, apparentemente fa differenza. Tanto più che il mio take profit è molte volte superiore al mio stop loss!

Ma penso che la quantità di profitto del tester in questa situazione dovrebbe tradursi nella qualità del lavoro online. Ne sono sicuro! I profitti dell'Expert Advisor nel tester sono troppo audaci. Cosa bisogna fare per rendere redditizio l'Expert Advisor nel trading online? Per favore, condividete le vostre idee. Qualche idea. Qualsiasi cosa intelligente e qualsiasi cosa incredibile...