Aiuto per la codifica - pagina 117

 

Grazie mladen, sono un programmatore principiante, infatti tu sei quello che mi ha aiutato con il codice della prima parte qualche tempo fa, ma l'allarme si ripete ancora all'inizio della nuova candela, per favore aiutami a vedere sia la prima che la seconda parte.

Vedi il messaggio originale qui sotto:

La prima parte del codice contiene l'allarme di acquisto e di vendita, supporta l'allarme quando si verifica il segnale di acquisto e di vendita, ma ripete l'allarme all'inizio di ogni nuova candela....pls aiuta a correggere questo facendo suonare l'allarme solo quando si verifica la condizione di set up.

La seconda parte del codice è un allarme di stop, che deve inviare un segnale di stop all'utente quando l'opportunità di acquisto o vendita in corso non è più presente.

static datetime lastAlerted=0;

//Momento.....1ora

double mom_1h=iMomentum(NULL,60,14,PRICE_CLOSE,0);

double b4mom_1h=iMomentum(NULL,60,14,PRICE_CLOSE,1);

(1)========Avvisi per acquisto e vendita==========

//Avvisi per comprare

if(mom_1h>99.6353)&&(mom_1h>b4mom_1h)&&(lastAlerte d!=Time[0])){

lastAlerted=Time[0];

Alert(Buy","\n"," L'ora corrente è ",TimeToStr(CurTime()),"\n",Symbol());

}

/Avvisi per vendere

if(mom_1h<100.7482)&&(mom_1h<b4mom_1h)&&(lastAlert ed!=Time[0])){

lastAlerted=Time[0];

Alert("Vendi","\n", "L'ora corrente è ",TimeToStr(TimeLocal(),TIME_SECONDS),"\n",Symbol( ));

}

(2)==========Avvisi per fermare l'acquisto e la vendita==============

//Avviso per fermare l'acquisto

if(mom_1h<b4mom_1h)&&(lastAlerted!=Time[0])){

lastAlerted=Time[0];

Alert(Stop Buy","\n", "Current time is ",TimeToStr(CurTime()),"\n",Symbol());

}

/Avvisi per fermare la vendita

if(mom_1h>b4mom_1h)&&(lastAlerted!=Time[0])){

lastAlerted=Time[0];

Alert(" Stop Sell","\n", "Il tempo corrente è ",TimeToStr(TimeLocal(),TIME_SECONDS),"\n",Symbol( ));

}

 
Mastercash:
Grazie mladen, sono un programmatore principiante, infatti tu sei quello che mi ha aiutato con il codice della prima parte qualche tempo fa ma l'allarme si ripete ancora all'inizio della nuova candela, per favore aiutami a vedere sia la prima che la seconda parte.

Vedi il messaggio originale qui sotto:

La prima parte del codice contiene l'allarme di acquisto e di vendita, ma ripete l'allarme all'inizio di ogni nuova candela....pls aiutare a correggere questo facendo suonare l'allarme solo quando la condizione impostata si verifica.

La seconda parte del codice è un allarme di stop, che deve inviare un segnale di stop all'utente quando l'opportunità di acquisto o vendita in corso non è più presente.

static datetime lastAlerted=0;

//Momento.....1ora

double mom_1h=iMomentum(NULL,60,14,PRICE_CLOSE,0);

double b4mom_1h=iMomentum(NULL,60,14,PRICE_CLOSE,1);

(1)========Avvisi per acquisto e vendita==========

//Avvisi per comprare

if(mom_1h>99.6353)&&(mom_1h>b4mom_1h)&&(lastAlerte d!=Time[0])){

lastAlerted=Time[0];

Alert(Buy","\n", "L'ora corrente è ",TimeToStr(CurTime()),"\n",Symbol());

}

/Avvisi per vendere

if(mom_1h<100.7482)&&(mom_1h<b4mom_1h)&&(lastAlert ed!=Time[0])){

lastAlerted=Time[0];

Alert("Vendi","\n", "L'ora corrente è ",TimeToStr(TimeLocal(),TIME_SECONDS),"\n",Symbol( ));

}

(2)==========Avvisi per fermare l'acquisto e la vendita==============

//Avviso per fermare l'acquisto

if(mom_1h<b4mom_1h)&&(lastAlerted!=Time[0])){

lastAlerted=Time[0];

Alert(Stop Buy","\n", "Current time is ",TimeToStr(CurTime()),"\n",Symbol());

}

/Avvisi per fermare la vendita

if(mom_1h>b4mom_1h)&&(lastAlerted!=Time[0])){

lastAlerted=Time[0];

Alert(" Stop Sell","\n", "Il tempo corrente è ",TimeToStr(TimeLocal(),TIME_SECONDS),"\n",Symbol( ));

}

Prova qualcosa come questo:

static datetime lastAlerted1=0;

static datetime lastAlerted2=0;

static string lastType1="";

static string lastType2="";

//Momentum.....1hour

double mom_1h=iMomentum(NULL,60,14,PRICE_CLOSE,0);

double b4mom_1h=iMomentum(NULL,60,14,PRICE_CLOSE,1);

//========Alerts for buy and Sell==========

//Alerts for buy

if((mom_1h>99.6353)&&(mom_1h>b4mom_1h)&&(lastAlerted1!=Time[0] && lastType1!="Buy")){

lastAlerted1=Time[0];

lastType1="Buy";

Alert("Buy","\n","Current time is ",TimeToStr(CurTime()),"\n",Symbol());

}

//Alerts for Sell

if((mom_1h<100.7482)&&(mom_1h<b4mom_1h)&&(lastAlerted1!=Time[0] && lastType1!="Sell")){

lastAlerted1=Time[0];

lastType1="Sell";

Alert("Sell","\n","Current time is ",TimeToStr(TimeLocal(),TIME_SECONDS),"\n",Sym bol( ));

}

//==========Alerts for Stop buying and sell==============

//Alert to stop Buy

if((mom_1h<b4mom_1h)&&(lastAlerted2!=Time[0]&&lastType2!="Stop Buy")){

lastAlerted2=Time[0];

lastType2="Stop Buy";

Alert("Stop Buy","\n","Current time is ",TimeToStr(CurTime()),"\n",Symbol());

}

//Alerts to Stop Selling

if((mom_1h>b4mom_1h)&&(lastAlerted2!=Time[0]&&lastType2!="Stop Sell")){

lastAlerted2=Time[0];

lastType2="Stop Sell";

Alert(" Stop Sell","\n","Current time is ",TimeToStr(TimeLocal(),TIME_SECONDS),"\n",Sym bol( ));

}

 

Grazie, lo farò!

 

Aiuto per la codifica

Ciao a tutti.

Per favore, mladen o mr.tools. Ho un piccolo problema con il refresh di questo indicatore. Quando si apre una nuova candela, non si auto-aggiorna correttamente, e devo aprire e chiudere la finestra dei parametri esterni per aggiornarla. Potreste dare un'occhiata al codice e correggerlo?

Grazie.

s.mq4

File:
s.mq4  3 kb
 
lrprez:
Ciao a tutti.

Per favore, mladen o mr.tools. Ho un piccolo problema con il refresh di questo indicatore. Quando si apre una nuova candela, non si auto-aggiorna correttamente, e devo aprire e chiudere la finestra dei parametri esterni per aggiornarla. Potreste dare un'occhiata al codice e correggerlo?

Grazie.

s.mq4

lrprez

Prova ora

File:
s-2.mq4  3 kb
 

Grazie mille, mladen. Sei un genio.

 

Ho bisogno di aiuto sulla codifica di mt4

Ciao a tutti,

Sto cercando aiuto per scrivere il codice con le specifiche qui sotto:

1. Inserisco una data e un'ora specifiche

2. Voglio che l'indicatore mostri

la data specifica e l'ora di apertura della candela, alto, basso, chiusura

Per esempio, inserisco D'2013.8.01 13:00' e lo inserisco nel grafico M30

L'indicatore mi mostrerà la candela del grafico M30 a D'2013.8.01 13:00

valore di apertura, alto, basso, chiusura.

Grazie

 
tkz883:
Ciao a tutti,

Sto cercando aiuto per scrivere il codice con le specifiche qui sotto:

1. inserirò data e ora specifiche

2. Voglio che l'indicatore mostri

la data specifica e l'ora di apertura della candela, massimo, minimo, chiusura

Per esempio, inserisco D'2013.8.01 13:00' e lo inserisco nel grafico M30

L'indicatore mi mostrerà la candela del grafico M30 a D'2013.8.01 13:00

valore di apertura, alto, basso, chiusura.

Grazie

Puoi farlo in questo modo:

#property copyright ""

#property link ""

#property indicator_chart_window

extern datetime TimeToCheck = D'2013.8.01 13:00';

int init() { return(0); }

int start()

{

int bar = iBarShift(NULL,0,TimeToCheck);

Comment("Open : "+DoubleToStr(Open,Digits)+"\n"+

"Close : "+DoubleToStr(Close,Digits)+"\n"+

"High : "+DoubleToStr(High,Digits)+"\n"+

"Low : "+DoubleToStr(Low,Digits));

return(0);

}
File:
tkz.mq4  1 kb
 

Aiuto per la codifica semplice

Ho bisogno di aiuto per codificare un indicatore:

A. INGRESSO:

1. data e ora info: D'2013.8.01 13:00'

2. Prezzo applicato: Open, high, low close

B. Esempio d'uso:

1. Per esempio, voglio che l'indicatore mostri il prezzo aperto per

data di input D'2013.8.01 13:00' nei grafici M60 e l'indicatore

mi mostrerà il valore del prezzo aperto della candela in quella specifica data di input

2. Successivamente, l'indicatore mostrerà il prezzo aperto per qualsiasi momento

dopo D'2013.8.01 13:00' (ma non be4) e continua ad aggiornare

 

Ciao mladen, ho fatto modificare questo indicatore molto tempo fa e mi piace come viene visualizzato ora, ma l'unico problema è che ora sta usando troppa CPU. Potresti per favore dare un'occhiata sotto il cofano e vedere se forse il codice ha bisogno di essere pulito o vedere perché si blocca la mia piattaforma quando i mercati iniziano a muoversi.

Sarà molto apprezzato!

Grazie in anticipo!

G

File: