LO SCAMBIO DI IDEE - pagina 15

 
leonid553 писал (а) >>

Non si tratta di strategia. Non è difficile inserire un indicatore.

Ma come far funzionare programmaticamente il codice dell'esperto a PREZZI APERTI?

Per ottenere lo stesso risultato nel percorrere TUTTI I BIGLIETTI, come nel percorrere gli OPEN PRICES?

Non sono ancora riuscito a farlo.....

Essere legati al tempo o al volume di sucks.... Si possono perdere le zecche

Io lo faccio in questo modo.

in variabili

int ultimo_bar =0;

int start()

{

se (!IsNewBar()) return(0);

arriviamo qui solo una volta al primo tick di una nuova barra. anche se abbiamo perso il primo tick di questa barra

}

bool IsNewBar()

{

se (last_bar == Bars) return(false);
ultima_barra = Bars;
return(true);

}

 
kharko писал (а) >>

Cattura il codice... Apre e modifica a prezzi di apertura...

kharko e esmaster, grazie!

Ma ho già scritto sopra nella pagina precedente che metodi così semplici non aiutano. Ho provato io stesso usando entrambi i metodi - ho inserito una condizione ai prezzi di apertura in void start().

Ma a quanto pare questo non è sufficiente! Come in precedenza, ottengo risultati diversi, nettamente opposti, quando corro per OPEN PRICES e per ALL TICKERS.

Probabilmente, dobbiamo tracciare il lavoro "di qua e di là" sul grafico visivo del tester, poi "sentire la differenza" e cambiare in qualche modo il lavoro di altre funzioni (oltre a start())

//-----------------------------------------------------------
void start()
   {
   if (!IsTradeAllowed()) return;
   level_buy_stop=0;
   level_sell_stop=0;
   StepingStop();
   StepingPendings();
   if (TotalBuy ()==0 && TotalBuyStop ()==0) SetBuyStop ();
   if (TotalSell()==0 && TotalSellStop()==0) SetSellStop();
   Comment("Level Buy Stop=",level_buy_stop*Point,
    "\n","Level Sell Stop=",level_sell_stop*Point);
   }
//-----------------------------------------------------
void StepingStop()      {... .  }
//-----------------------------------------------------
void StepingPendings()  {... .  }
//-----------------------------------------------------
void SetBuyStop()    {... ...}

void SetSellStop()   {... ...}

int TotalBuy()       {  ...  }

int TotalBuyStop()   {...    }

int TotalSell()      {...... }

int TotalSellStop()  {.... ..}

// End
 
leonid553 diverso perché il fissaggio è a prezzi di apertura... dobbiamo rimuovere del tutto gli stop e i profitti... e chiudere a prezzi di apertura...
 
leonid553 писал (а) >>

Ciao a tutti. Propongo di usare il cosiddetto "Rilevatore di tendenze". Non mi aspettavo un risultato così buono da questa mia scoperta. Accidentalmente accecato - messo dentro. Inserisco questa parte in quasi tutti gli Expert Advisor e anche un Expert Advisor perdente produce qualche profitto! Diminuisce il numero di trade contro tendenza (per lo più perdenti) e aumenta considerevolmente il parametro di redditività dell'Expert Advisor, spesso fino ad almeno due! Questo significa che al di fuori del periodo di ottimizzazione abbiamo molte più probabilità di ottenere un profitto!

Ecco l'idea: prendiamo gli indicatori BearsPower e BullsPower (potere dei tori e potere degli orsi) e li confrontiamo tra loro. Ma basta confrontarli - è un affare doloroso. Farlo programmaticamente è ingombrante. È per questo che metto la MA su di loro e confronto i valori della MA sulla barra zero! Basta sommare questi valori = Delta. Inoltre tutto è semplice. Se DELTA ..>0 - la tendenza è al rialzo. Altrimenti si va verso il basso!

Dobbiamo solo aggiungere alla condizione di acquisto if ((Delta>=0) && ... ...

E nella condizione di vendita - se ((Delta<=0) && ... ...

Nei parametri esterni di qualsiasi Expert Advisor, inserire :

Non è necessario inserirlo. Ma poi dovete prendere questi parametri e inserire valori numerici invece di nomi di variabili direttamente nel codice. Ed ecco il blocco stesso:

Ecco un esempio di come funziona un EA con il Trend Detector. Possiamo vedere che in caso di tendenza al rialzo, si aprono le posizioni di acquisto e viceversa.

Forse qualcuno avrà suggerimenti per migliorare e perfezionare il design. Vorrei sapere quanto sarà promettente questo rilevatore di tendenze.

Ho fatto l'indicatore secondo la descrizione esatta e sono rimasto sorpreso :) ho ottenuto un MACCD in ritardo :)

File:
 
Vinin писал (а) >>

вот и индикатор. _LineStat_1.mq4

На экран выводится количество баров.Выводится 3 сигмы. И если цена находится внутри одно СКО, то перерасчета не прноизводится, так как все в допустимых пределах. При пробитии, будет перерасчет.

Ci sono tre valori numerici nell'angolo in alto a sinistra del grafico dopo N=150 (numero di barre). Per favore, ditemi cosa significano e come usarli

 
Figar0 писал (а) >>

La mia idea, comincio io...

L'idea è vecchia, ma per qualche motivo non diffusa nell'implementazione, la uso io stesso, funziona abbastanza bene con alcune strategie. Esci solo da Take Profit. Se hai indovinato dalla direzione - ottieni inizialmente il take profit pianificato, se no - stringi il TP seguendo il prezzo (puoi usare diversi algoritmi - loop, rubber band, indicatori di livello, ecc.) In questo caso, la presa può essere negativa, ma è spesso molto più redditizia dell'attivazione di uno stop loss. Uno stoploss di sicurezza per limitare perdite enormi non è vietato.

1) Lo uso anche nel daytrading, e lo chiamo "Trailing Profit". Tuttavia, non uso il trailing stop per il trading attivo, perché è un modo per minimizzare il profitto.

2) Ho anche una piccola idea. A volte è spiacevole vedere il profitto diminuire e spostare la posizione aperta in perdita, dopo aver perso 1-2 punti al TP. Ecco perché ho iniziato a praticare la seguente soluzione: quando 1-2 pips sono rimasti prima del TP, invio una richiesta di chiusura dell'ordine. In questo caso l'ordine viene chiuso sul TP, o non viene chiuso affatto (poiché il prezzo ha rimbalzato ed è uscito dall'area di slippage), ma gli ordini vengono chiusi più spesso e questo porta più profitto per un periodo.

 
rid писал (а) >>

Ci sono tre valori numerici nell'angolo sinistro del grafico dopo N=150 (numero di barre). Per favore, ditemi cosa significano e come usarli

Il delta è uguale alla differenza tra la linea mediana sinistra e quella destra.

3*S sono tre deviazioni standard

n è quante barre il canale di regressione non è stato ricalcolato.

Se il prezzo sull'ultima barra è entro 3 deviazioni standard (+-1,5), non viene eseguito alcun ricalcolo.

Ho dovuto entrare nel codice (l'indicatore è troppo vecchio, è stato sviluppato nel 2006).

Se volete cambiare le informazioni emesse, siete i benvenuti

 
OK! Grazie.
 
Vinin писал (а) >>

Ho dovuto entrare nel codice (l'indicatore è troppo vecchio, è stato fatto nel 2006)

Se vuoi cambiare le informazioni visualizzate, sei il benvenuto.

C'è una modesta richiesta. Se non ti dispiace. Come scrivere un'espressione iCustom per questo indicatore?

Almeno per OGNI linea gialla e per la linea centrale?

Non riesco a capirlo da solo!

 
rid писал (а) >>

C'è un'umile richiesta. Se non è difficile. Come registrare l'espressione iCustom per questo indicatore?

Almeno per OGNI linea gialla e per la linea centrale?

Non riesco a capirlo da solo!

Se ne hai bisogno, posso cercare nelle pile l'indicatore giusto o crearne uno. E come lavorare con esso nell'Expert Advisor - solo tutti i calcoli in esso (Expert Advisor).

Motivazione: