[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 231

 
PapaYozh:


zero emozioni =( ancora niente =(
 
CLAIN:

nessuna emozione =( ancora niente =(


Hai una brutta sensazione, come se ti dovessi qualcosa.

Analizzate il vostro CheckTicket(), cosa mette nel vostro biglietto?

E in generale, usate la funzione Print(...) e analizzate il log.

 
CLAIN:

zero emozioni =( ancora niente =(

Non conosco la vostra logica dietro la funzione. Nel caso, vi suggerisco di controllare se questo è quello che volete.

Stai applicando correttamente l'iMACD e non hai bisogno anche di una Signal Line?

 
PapaYozh:


C'è una brutta sensazione, come se ti dovessi qualcosa.

Analizzate il vostro CheckTicket(), cosa mette nel vostro biglietto?

In generale, usate la funzione Print(...) e analizzate il log.


Non mi devi niente... Mi dispiace se ti senti così... è solo che ho avuto così tanti problemi con lei già...............
 

Penso che checkticket non c'entri nulla, perché se cambio solo signal_MACD a true, i trade si chiudono bene, e la ricerca si restringe solo alla dimensione della funzione:

 bool signal_MACD() 
  { 
    bool signal_MACD = false; 
    double tmp = iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0); 
    for(int i=1;i<=5;i++) 
    { 
       if(NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0)*tmp,4)<0.0) 
       { 
          signal_MACD = true; 
          break; 
       }        
    } 
    return(signal_MACD);
  } 

da qualche parte qui non vuole prendere true......... Non lavoro bene con il ciclo for, quindi non so dove mettere il ritorno qui

 
CLAIN:

Penso che checkticket non c'entri nulla, perché se cambio solo signal_MACD a true, i trade si chiudono bene, e la ricerca si restringe solo alla dimensione della funzione:

da qualche parte qui non vuole prendere true......... Non lavoro bene con il ciclo for, quindi non so dove mettere il ritorno qui

E qual è la differenza tra il doppio tmp e NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0)?

Moltiplicandoli sarà sempre maggiore di zero.

Penso di si))

(-) * (-) = +

(+) * (+) = +

 

la mia logica è molto semplice... se l'indicatore MACD è su un lato di 0 per non più di 5 minuti, allora trade.... questo è tutto...

a proposito, se

bool signal_MACD() 
  { 
    bool signal_MACD = true; 
    double tmp = iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0); 
    for(int i=1;i<=5;i++) 
    { 
       if(NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0)*tmp,4)<0.0) 
       { 
          signal_MACD = true; 
          break; 
       }        
    } 
    return(signal_MACD);
  } 

... nella 3a linea "false" a "true", gli accordi saranno fatti tutto il tempo, significa che ho scritto la logica e il codice dell'accordo corretti, e tutto ciò che rimane è una clausola for e return

finiamola per favore

 
DhP:

Qual è la differenza tra double tmp eNormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,0)?

Moltiplicandoli sarà sempre maggiore di zero.

Penso di si))

(-) * (-) = +

(+) * (+) = +


non sarà sempre maggiore di 0... Solo se il MACD ha attraversato lo 0 su uno dei tick, ci sarà (+)*(-) - che indicherà una croce... beh... la mia logica =) non necessariamente corretta, naturalmente )
 
CLAIN:

la mia logica è molto semplice... se l'indicatore MACD è su un lato di 0 per non più di 5 minuti, allora trade.... questo è tutto...

A proposito, se

... nella 3a linea "false" a "true", gli accordi saranno fatti tutto il tempo, significa che ho scritto la logica e il codice dell'accordo corretti, e tutto ciò che rimane è una clausola for e return

finiamola per favore


Saranno sempre conclusi perché la funzione restituirà sempre "true"
 
CLAIN:

la mia logica è molto semplice... se l'indicatore MACD è su un lato di 0 per non più di 5 minuti, allora trade.... questo è tutto...

A proposito, se

... nella 3a linea "false" a "true", gli accordi saranno fatti tutto il tempo, significa che ho scritto la logica e il codice dell'accordo corretti, e tutto ciò che rimane è una clausola for e return

Finiamola per favore.

Forse ci dovrebbe essere(i) nella linea? .....

if(NormalizeDouble(iMACD(Symbol(),TF,fast_ema,slow_ema,signal_period,PRICE_CLOSE,MODE_MAIN,i).