PHP Code:
extern int Punti= 50;
extern int MediaTrandPeriodInput =200;
input ENUM_MA_METHOD MediaTrandMethodInput = MODE_SMA;
void AllertoPerIlRialzo()
{
ObjectCreate(ChartID(),IntegerToString(Time[0],0,0),OBJ_VLINE,0,Time[0],0);
ObjectSetInteger(ChartID(),IntegerToString(Time[0],0,0),OBJPROP_COLOR,clrDarkGreen);
// Alert("Teo_CI rialzista su "+Symbol()+" a TF "+IntegerToString(Period(),0,0));
}
void AllertoPerIlRibasso()
{
ObjectCreate(ChartID(),IntegerToString(Time[0],0,0),OBJ_VLINE,0,Time[0],0);
ObjectSetInteger(ChartID(),IntegerToString(Time[0],0,0),OBJPROP_COLOR,clrDarkRed);
//Alert("Teo_CI ribassista su "+Symbol()+" a TF "+IntegerToString(Period(),0,0));
}
int BreakMinMax()
{
// Candela Verde rotto il max buy
if ((Open[2] > Close [2]) && (Close[1] > Close[2]))
return +1;
// Candela Rosso Rotto il min sell
if ((Open[2] < Close [2]) && (Close[1] < Close[2]))
return - 1;
return 0;
}
static datetime TempoUltimaCandela;
bool NuovaCandela(){
datetime TempoCandelaAttuale = Time[0];
if (TempoCandelaAttuale != TempoUltimaCandela){
TempoUltimaCandela = TempoCandelaAttuale;
return (true);
}else{
return (false);
}
}
void OnTick()
{
if (NuovaCandela()==true)
{
if (BreakMinMax()==1)
AllertoPerIlRialzo();
if (BreakMinMax()==-1)
AllertoPerIlRibasso();
}
}
Questa piccola funzione dovrebbe inviarmi un segnale (che poi deciderò, per ora sono linee orizzontali sulla candela)nei seguenti casi:
candela precedente "x+1" candela appena chiusa(del segnale) "x"
Trand long: se la candela "x+1" chiude ad un prezzo > della candela appena chiusa "x" dovrebbe "disegnare" una riga verticale verde su quest'ultima candela
Trand short: se la candela "x+1" chiude ad un prezzo < della candela appena chiusa "x" dovrebbe "disegnare" una riga verticale rossa su quest'ultima candela
la funzione a volte salta "non disegna le righe continuativamente" sapete dirmi dov'è l'errore? avete idee*/
Comment