//+------------------------------------------------------------------+ //| Twenty four.mq4 | //| Имя: Саша | //| mailto: marketadviser@rambler.ru | //| | //| Каталог установки: | //| C:\Program Files\ - Терминал - \experts\indicators\ | //+------------------------------------------------------------------+ #property copyright "Copyright © 2009, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #property indicator_chart_window #property indicator_buffers 2 double PointDay[]; double TrendDay[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexBuffer(0,TrendDay); SetIndexStyle(0,DRAW_SECTION,NULL,1,PaleVioletRed); SetIndexLabel(0,"TrendDay"); SetIndexBuffer(1,PointDay); SetIndexStyle(1,DRAW_ARROW,NULL,2,IndianRed); SetIndexArrow(1,159); SetIndexLabel(1,"PointDay"); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- ObjectsDeleteAll(); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { // Последний день предыдущего месяца. datetime BeginDay=StrToTime(StringConcatenate(Year(),".",Month()-1)+".01"); // Команда для выполнения функции. DayTimeTrend(BeginDay); return(0); } //+------------------------------------------------------------------+ //| Тренд | //+------------------------------------------------------------------+ void DayTimeTrend(datetime BeginDay) { // Количество буферов: #property indicator_buffers 2 // Переменные цикла: double Trend; double Beg=iBarShift(NULL,0,BeginDay); for(int y=Beg; y>=0; y--) { if(TimeDay(Time[y])!=TimeDay(Time[y+1])) int t=y; { Trend=(Open[t]+Close[t])/2; // Линия тренда: TrendDay[t]=Trend; // Точка начала торговой сессии: PointDay[t]=Trend; // Отметка средней цены начала торгов: if(y!=Beg) { ObjectCreate("OpenDay"+t,OBJ_ARROW,0,Time[t],Trend); ObjectSet("OpenDay"+t,OBJPROP_ARROWCODE,SYMBOL_LEFTPRICE); ObjectSet("OpenDay"+t,OBJPROP_COLOR,Red); } } } } //+------------------------------------------------------------------+