EURUSD - Tendenze, previsioni e implicazioni (parte 1) - pagina 50

 
EvgeTrofi >> :


E se si aggiunge un'analisi tecnica competente e non solo aprire accordi a caso, è possibile ottenere una certa stabilità e un'alta redditività:

Questo è un test di 10 anni fa su GBPUSD M30

Per favore, aiutatemi a trovare i parametri: L'obiettivo è quello di ridurre il numero e la dimensione dei prelievi nel tempo massimo di vita sul tester della nuova versione di TENGRI_Trofi 1.4.13.

In allegato ci sono alcuni dei miei esempi (file test.rar) e la nuova versione di TENGRI_Trofi...

Ho un filtro che funziona molto bene (inventato personalmente da me e dal mio connazionale leonid553), che abbiamo chiamato filtro di canale. Solo per sistemi "quasi-martingala".

L'idea è che la prima operazione del ciclo si apre non a caso ma solo nella direzione della tendenza quando tocca o rompe il canale.

Questo canale è disegnato dall'Expert Advisor stesso.

Funziona così:

Nei parametri esterni inseriamo:

extern string  _____  = "=== Channel-Фильтр ==="; 
extern bool     DrawChannel=true;
extern int      Cbar=8;
extern int      Min_ch=15;         

Successivamente, definiamo la parte (funzione) "disegno" stessa, che mettiamo alla fine del codice EA (fuori dalla funzione START)
void DrawChannel (double HCh, double LCh, double MidCh) {
    //--- Рисуем верхнюю границу канала
   if (ObjectFind("HCh_"+Time[0]) < 0) {
      if (ObjectFind("HCh_"+Time[1]) < 0) double PrevHChY= HCh;
      else  PrevHChY=ObjectGet("HCh_"+Time[1], OBJPROP_PRICE2);
   ObjectCreate("HCh_"+Time[0],OBJ_TREND,0,Time[1], PrevHChY,Time[0], HCh); 
   ObjectSet("HCh_"+Time[0], OBJPROP_RAY,false);
   ObjectSet("HCh_"+Time[0], OBJPROP_COLOR,Yellow);  
   ObjectSet("HCh_"+Time[0], OBJPROP_WIDTH,2);     
   }
   else ObjectSet("HCh_"+Time[0], OBJPROP_PRICE2, HCh);
   
   //--- Рисуем нижнюю границу канала
   if (ObjectFind("LCh_"+Time[0]) < 0) {
      if (ObjectFind("LCh_"+Time[1]) < 0) double PrevLChY= LCh;
      else  PrevLChY=ObjectGet("LCh_"+Time[1], OBJPROP_PRICE2);
   ObjectCreate("LCh_"+Time[0],OBJ_TREND,0,Time[1], PrevLChY,Time[0], LCh); 
   ObjectSet("LCh_"+Time[0], OBJPROP_RAY,false);
   ObjectSet("LCh_"+Time[0], OBJPROP_COLOR,Yellow);  
   ObjectSet("LCh_"+Time[0], OBJPROP_WIDTH,2);    
   }
   else ObjectSet("LCh_"+Time[0], OBJPROP_PRICE2, LCh);   
   
   //--- Рисуем среднюю границу канала
   if (ObjectFind("MidCh_"+Time[0]) < 0) {
      if (ObjectFind("MidCh_"+Time[1]) < 0) double PrevMidChY= MidCh;
      else  PrevMidChY=ObjectGet("MidCh_"+Time[1], OBJPROP_PRICE2);
   ObjectCreate("MidCh_"+Time[0],OBJ_TREND,0,Time[1], PrevMidChY,Time[0], MidCh); 
   ObjectSet("MidCh_"+Time[0], OBJPROP_RAY,false);
   ObjectSet("MidCh_"+Time[0], OBJPROP_COLOR,Blue);  
   ObjectSet("MidCh_"+Time[0], OBJPROP_WIDTH,1);       
   }
   else ObjectSet("MidCh_"+Time[0], OBJPROP_PRICE2, MidCh);  
}



Inoltre, nell'inite e nel deinite si aggiunge anche :
int init()
{
//----------------------------------------------------------
ObjectCreate("lowline",OBJ_HLINE,0,0,0,0,0);
ObjectCreate("highline",OBJ_HLINE,0,0,0,0,0); 
ObjectCreate("avline",OBJ_HLINE,0,0,0,0,0); 
ObjectSet("lowline", OBJPROP_BACK,1); 
ObjectSet("highline", OBJPROP_BACK,1);
ObjectSet("avline", OBJPROP_BACK,1);  
}
//-----------------------------------------------------------
int deinit()
{
ObjectDelete("lowline");
ObjectDelete("highline"); 
ObjectDelete("avline"); 
if (!IsTesting()) ObjectsDeleteAll(0,OBJ_TREND);  
}

Successivamente, impostare la funzione START su :
int start()
{
       
//--------------------------------------------
Hbid= iHigh(NULL,0,iHighest(NULL,0,MODE_HIGH, Cbar,0));
Lbid= iLow (NULL,0,iLowest (NULL,0,MODE_LOW, Cbar,0));  
if ( DrawChannel) DrawChannel( Hbid, Lbid, sredn);
ObjectMove("lowline",0,Time[ Cbar], Lbid); 
ObjectMove("highline",0,Time[ Cbar], Hbid); 
ObjectMove("avline",0,Time[ Cbar], sredn); 

Ora abbiamo tutto il necessario per impostare le condizioni per gli ingressi.

Per l'iniziale, - le primissime voci con un lotto minimo.

if ( High[1]>= Hbid && ( Hbid- Lbid)> Min_ch*Point ){// если предполагается
// движение вверх - // открываем сделку бай
.... .... ....
if ( Low[1]<= Lbid  && ( Hbid- Lbid)> Min_ch*Point) {//если предполагается
 //движение вниз// то открываем сделку селл

L'applicazione del filtro descritto dà circa il 15-35% di profitto in più. Soprattutto per i movimenti di tendenza quando l'Expert Advisor dà entrate solo per la tendenza.

Per esempio:

Si può vedere chiaramente che con tali movimenti, l'Expert Advisor darà segnali solo in direzione NELL.

Olio BRN. M5



Parametri

extern int Cbar=12;
extern int_ch=28;
può essere ottimizzato.

 
forex-k писал(а) >>

"giocattoli del graal"

Sto preparando una terza versione.

8) Sono scioccato, dove è il drawdown? o da, ma un piccolo profitto drawdown non è molto? quali sono i parametri ottimali da scegliere? c'è una distanza tra gli ordini e la dimensione del profitto

 
strangerr писал(а) >>

Che tipo di miracolo è questo?

Sono scioccato dai risultati, ho rinunciato a questo sistema quando mi sono reso conto che non posso sedere a lungo nella casella, solo in movimento fa soldi

 
firemast >> :

Sono scioccato dai risultati, ho rinunciato al sistema quando mi sono reso conto che non potevo stare nella scatola per molto tempo, guadagna solo sull'azione.

Anch'io ci ho giocato un po'.

Sto cercando i giusti punti di entrata e le distanze tra gli ordini.

 
firemast >> :

Sono scioccato dai risultati, ho rinunciato a questo sistema quando mi sono reso conto che non posso sedere a lungo nella casella, solo in movimento fa soldi


Yuri, perché cercare i Graal? È chiaro che non esiste un sistema di trading meccanico redditizio, perché i movimenti dei prezzi sui mercati sono la paura e l'eccitazione della folla. È un sistema molto più complesso, e un computer non sarà in grado di calcolarlo tra 50 anni. E state parlando di robot assemblati in ginocchio che riescono a malapena a fare 2+2.
 
Facevo programmazione e mi ha insegnato una cosa semplice - un computer è stato inventato dall'uomo secondo un principio molto semplice - 0 e 1, SI e NO, ma il fatto è che l'uomo opera anche con
una parola come UNKNOWN ed è qualcosa che il computer non può calcolare. Ma quando sarà in grado di calcolare il termine, avremo una mente artificiale. Allora nessuno scambierà. Ammetto che ci sono buoni sistemi semi-meccanici, ma il successo di questi sistemi dipende dal conducente della carrozza, che preme i pedali. Se si tratta di Warren Buffett, allora il sistema POTREBBE andare in attivo, ma se si tratta di voi e di me, allora è come pilotare un aeroplano senza avere idea di come farlo.
 
Krotu >> :


È chiaro a tutti che non esiste un unico sistema di trading meccanico redditizio e......

Il mio vero (Broko). Programma dal 17 agosto a seg. (cioè un mese)

95 PROC. Operazioni realizzate da Scalper Advisor su piccoli orizzonti temporali.


 
rid >> :

Il mio reale. Programma dal 17 agosto a seg. (cioè un mese)

95 PROFITTI. L'Expert Advisor realizza l'affare.



Reid - Sto parlando di un robot, non di un EA. Il consulente decide l'entrata, l'uscita e la dimensione del lotto o voi stessi?
 
Krotu >> :
Ma il punto è che una persona opera ancora con una parola come SCONOSCIUTO e questo è solo il computer non può calcolare.

Abbastanza capace.... UNKNOWN è quando non c'è né YES né NO, quindi UNKNOWN.

Ma sono abbastanza d'accordo con te al 100% perché ci sono molte più parole interessanti che una persona conosce, per esempio MAYBE.

In generale, non è nemmeno una questione di parole, il computer non è in grado di sentire...

 
RomanS >> :

Abbastanza capace.... UNKNOWN è quando non c'è né YES né NO, quindi UNKNOWN.

Ma sono abbastanza d'accordo con te al 100%, perché molte altre parole interessanti che un uomo conosce, ad esempio, possono rompere.

In realtà, non si tratta nemmeno di parole, un computer non può sentire...


Hai ragione).