احسن لك هبير لتكون الاسطر اقل بكثير وافضل لجهازك
ولكن اذا تريده مؤشر: تضيف اسطر مالها داع ابدا وهي:
كود PHP:extern int days=2;
extern int line_width=2;
extern color line_color=clrYellow;
extern ENUM_LINE_STYLE line_style=0;
extern string start_Hour="02:23";
void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam)
{
if(id==CHARTEVENT_CLICK)
{
ObjectsDeleteAll(0,"H_");
int x =(int)lparam;
int y =(int)dparam;
datetime dt =0;
double price =0;
int window=0;
for(int i=0;i<days;i++)
{
datetime time1=StringToTime(TimeToString(iTime(NULL,PERIOD_D1,i),TIME_DATE)+" "+start_Hour);
datetime time2=time1+60*60*24;
Print(TimeToString(time1,TIME_DATE|TIME_SECONDS)+" ",TimeToString(time2,TIME_DATE|TIME_SECONDS));
ObjectCreate("H_"+i,OBJ_TREND,0,time1,iOpen(NULL,PERIOD_D1,i),time2,iOpen(NULL,PERIOD_D1,i));
ObjectSet( "H_"+i,OBJPROP_COLOR,line_color);
ObjectSet( "H_"+i,OBJPROP_WIDTH,line_width);
ObjectSet( "H_"+i,OBJPROP_STYLE,line_style);
ObjectSet( "H_"+i,OBJPROP_RAY_RIGHT,FALSE);
}
}
}
#property indicator_chart_window
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
//---
//--- return value of prev_calculated for next call
return(rates_total);
}
البرنامج اعلاه يرسم حسب طلبك
يأخذ بداية اليوم, ثم يحرك العمود من بداية اليوم بمقدار الساعات التي تختارها
او ان اشلرح غير واضح.
بداية اليوم معروف انها 00:00
اذا اخترت انت 02:34--انتبه للصياغة: ساعة ثم نقطتين فوق بعض ثم الدقائق--حسب طلبك
فغنه سيزح العمود الافقي بمقدار 02:34 ساعة-- الى اليمين

