Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 178

 
tara:

Non so cosa diranno i compagni, ma a me sembra che vada bene. Disegna le frecce, ma non gli oggetti.
A me sembra lo stesso. Le frecce possono essere disegnate come parte del buffer dell'indicatore, mentre gli oggetti sono creati tramite ObjectCreate()
 
pu6ka:
A me sembra lo stesso. Le frecce possono essere disegnate come parte del buffer dell'indicatore, e gli oggetti sono creati tramite ObjectCreate()


Non ho intenzione di discutere.
 
tara:

Non so cosa diranno i compagni, ma a me sembra che vada bene. Disegna frecce, ma non oggetti.

Mi rendo conto di aver fatto una domanda stupida, allora come fa l'indicatore a disegnare le frecce attraverso i buffer, e come le interpreto in segnali di trading?
 

bistreevseh:

Mi rendo conto di aver fatto una domanda stupida, allora come fa l'indicatore a disegnare le frecce attraverso i buffer e come le interpreto in segnali di trading?
molto probabilmente quando non c'è segnale il valore del buffer dell'indicatore è EMPTY_VALUE

come prendere un segnale - ecco le idee e l'attuazione


 
bool Stochastic () {
double Sig_Buy = zoneBUY; 
double Sig_Sell = zoneSELL;
bool Exit_UrBuy = TRUE;
bool Exit_UrSell = TRUE;
double sM0,sM1,sS0, sS1;
bool Bar_BuyCross = FALSE;
bool Bar_SellCross = FALSE;
int bar_b, bar_s;


   sM0  = iStochastic(NULL,timeframe,KPeriod,DPeriod,Slowing,MODE_SMA,0,MODE_MAIN,1);
   sM1  = iStochastic(NULL,timeframe,KPeriod,DPeriod,Slowing,MODE_SMA,0,MODE_MAIN,2);
   sS0 = iStochastic(NULL,timeframe,KPeriod,DPeriod,Slowing,MODE_SMA,0,MODE_SIGNAL,1);
   sS0 = iStochastic(NULL,timeframe,KPeriod,DPeriod,Slowing,MODE_SMA,0,MODE_SIGNAL,2);


bool CrossBuy = (sS0<Sig_Buy && sM0<Sig_Buy && sM1<sS1 && sM0>=sS0);
bool CrossSell = (sS0>Sig_Sell && sM0>Sig_Sell && sM1>sS1 && sM0<=sS0);

if (UseExitUr) {
if (sM0 >Sig_Buy && sM1 <= Sig_Buy) Exit_UrBuy = TRUE;
else Exit_UrBuy = FALSE;
if (sM0 <Sig_Sell && sM1 >= Sig_Sell) Exit_UrSell = TRUE;
else Exit_UrSell = FALSE;
}

if (CrossBuy) { TimeCrossB =  iOpen( NULL, 0, 1); }

  for (int cnt = 1 ; cnt < Finder ; cnt++) {
bar_b = iBarShift(NULL, 0, TimeCrossB, cnt); 
if (bar_b > 0) Bar_BuyCross = TRUE; 
}

if (Bar_BuyCross && Exit_UrBuy) {
     Li_24 = TRUE;
     TimeCrossB = -1;
 }

if (CrossSell) {TimeCrossS = iOpen( NULL, 0, 1);}

for (int cnm = 1 ; cnm < Finder ; cnm++) {
bar_s = iBarShift(NULL, 0, TimeCrossS, cnm); 
if (bar_s > 0) Bar_SellCross = TRUE; 
}


if (Bar_SellCross && Exit_UrSell) {
    TimeCrossS = -1;
    Li_28 = TRUE;
   }

   return(false);
}

Cari professionisti, per favore aiutatemi con questa idea. Voglio prendere un segnale dallo stocastico quando lascia la zona di ipercomprato (ipervenduto), se le sue linee attraversano queste zone. Voglio anche che questo incrocio non sia più lontano di un certo numero di barre - il parametro Finder. Ma non posso implementarlo. Se avete degli occhi freschi, per favore, guardate dove ci sono errori.

Nota: Parametri:

Li_28 = TRUE; и Li_24 = TRUE; 

gufo legge come buono per aprire gli ordini

 
dr.Vasgenich:

Guardate il codice con occhi nuovi e vedete dove sono gli errori.

Scusa se non sono un professionista, ma un codice di queste dimensioni senza un solo commento

1) prolunga il tempo necessario per il parsing e la ricerca dell'errore;

2) scoraggia l'analisi e la ricerca dell'errore.

 

Amici, capisco che per molti questo sarà banale e semplice, ma potreste aiutarmi a scrivere un EA in cui apparirà un segnale acustico quando l'istogramma MAKD attraverserà lo "0" su H4 e D1. Questo è tutto.

Forse ho già avuto tali domande, mi dispiace in questo caso. Ma ho bisogno del codice molto ...

 
CAYANNE:

Amici, capisco che per molti questo sarà banale e semplice, ma potreste aiutarmi a scrivere un EA in cui apparirà un segnale acustico quando l'istogramma MAKD attraverserà lo "0" su H4 e D1. Questo è tutto.

Forse ho già avuto queste domande, mi dispiace in questo caso. Ma ho bisogno del codice molto ...


È da questa parte.
 

Potete dirmi come implementare il divieto di installare un secondo indicatore dello stesso tipo in una finestra, se uno vi è già installato?

Vorrei farlo direttamente nel codice dell'indicatore, ma non so come farlo.

L'unica cosa che posso pensare è il controllo dell'indicatore in init(), ma init() è chiamato dopo che l'indicatore è installato...

 

Per favore, aiutatemi!

 OrderClose( OrderTicket(), 0.1, NormalizeDouble(Bid,2), 1 );  
      Alert("Маємо помилку ",GetLastError());

Errore 0 e l'ordine non si chiude! Cosa c'è che non va?

Motivazione: