voidOnStart()
{
//---
string my_gann="OBJ_GANNFAN object";
if(ObjectFind(0,my_gann)<0)// Oggetto non trovato
{
//--- Informa riguardo il fallimento
Print("Object ",my_gann," non trovato. Error code = ",GetLastError());
//--- Ottiene il prezzo massimo del grafico
double chart_max_price=ChartGetDouble(0,CHART_PRICE_MAX,0);
//--- Ottiene il prezzo minimo del grafico
double chart_min_price=ChartGetDouble(0,CHART_PRICE_MIN,0);
//--- Quante barre vengono mostrate nel grafico?
int bars_on_chart=ChartGetInteger(0,CHART_VISIBLE_BARS);
//--- Crea un array, per scrivere il tempo di apertura di ogni barra
datetime Time[];
//--- Dispone l' accesso al array come quello delle TimeSeries
ArraySetAsSeries(Time,true);
//--- Ora copia i dati delle barre visibili nel grafico in questo array
int times=CopyTime(NULL,0,0,bars_on_chart,Time);
if(times<=0)
{
Print("Non posso copiare l'array con l'orario di apertura!");
return;
}
//--- Preparazioni preliminari completate
//--- Indice deppa barra centrale nel grafico
int center_bar=bars_on_chart/2;
//--- Equatore del grafico - tra il massimo ed il minimo
double mean=(chart_max_price+chart_min_price)/2.0;
//--- Imposta le coordinate del primo ancor point al centro
ObjectCreate(0,my_gann,OBJ_GANNFAN,0,Time[center_bar],mean,
//--- Secondo anchor point a destra
Time[center_bar/2],(mean+chart_min_price)/2.0);
Print("Time[center_bar] = "+(string)Time[center_bar]+" Time[center_bar/2] = "+(string)Time[center_bar/2]);
//Print("Time[center_bar]/="+Time[center_bar]+" Time[center_bar/2]="+Time[center_bar/2]);
//--- Imposta la scala in unità per Pips / Bar
ObjectSetDouble(0,my_gann,OBJPROP_SCALE,10);
//--- Imposta il line trend
ObjectSetInteger(0,my_gann,OBJPROP_DIRECTION,GANN_UP_TREND);
//--- Imposta lo spessore della linea
ObjectSetInteger(0,my_gann,OBJPROP_WIDTH,1);
//--- Definisce lo stile della linea
ObjectSetInteger(0,my_gann,OBJPROP_STYLE,STYLE_DASHDOT);
//--- Imposta il colore della linea
ObjectSetInteger(0,my_gann,OBJPROP_COLOR,clrYellowGreen);
//--- Permette all'utente di selezionare un oggetto
ObjectSetInteger(0,my_gann,OBJPROP_SELECTABLE,true);
//--- Selezionalo da solo
ObjectSetInteger(0,my_gann,OBJPROP_SELECTED,true);
//--- Disegnalo sul grafico
ChartRedraw(0);
}
}
|