| / | Статьи |
Cтатьи
Торговые системы
Исследование статистики повторяемости направления свечей
Авторизуйтесь или зарегистрируйтесь , чтобы добавить новую статью
|
Исследование статистики повторяемости направления свечейВведениеЗдравствуйте. Хочу предложить вашему вниманию рассмотреть следующую мысль. Нельзя ли предсказать поведение рынка на ближайший небольшой период, на основе повторяемости направления свечей в одно и то же время в течение дня. Если такая повторяемость, конечно, обнаружится. Вообще, если удастся обнаружить, что в течение последних нескольких дней, в одно и то же время, свечи всегда имели одно и то же направление, то это само по себе было бы интересно. Ведь весь технический анализ, по сути, сводится к нахождению статистически значимых зависимостей. Смена направления повторяющихся свечей говорит о смене трендаДавайте для начала договоримся о некоторых терминах. Хотя эти термины общеупотребительные, стоит еще раз напомнить о них, для исключения разночтений. Если цена открытия свечи меньше чем цена закрытия - свеча бычья (на предлагаемых рисунках они закрашены белым цветом), если наоборот - цена медвежья (закрашены черным цветом). Если цена открытия равна цене закрытия, то такие свечи будем называть равными (термин мой). Если цена котировки, в течение какого-то периода падала, то говорим о медвежьем тренде за данный период, если наоборот, то о бычьем. Давайте посмотрим на график:
Рис 1. Свечной график на 4-х часовом таймфрейме USDJPY, с 20.11.2009 по 08.12.2008 Как видно из рисунка 1, если тренд медвежий, то и свечи, составляющие этот тренд, в основном медвежьи, если бычий, то и свечи бычьи. Если боковой, то и свечи постоянно меняют направление. Собственно, наша задача - определить, есть ли у свечей какая-либо повторяемость, и как она меняется в зависимости от изменения направления тренда. Конечно, все это можно проделать и вручную, скажем, взять часовой или любой другой график, выписать на бумажку направление свечей, и сравнивать их друг с другом за какой-то период. Объем работы большой, но в принципе возможный. Но у нас есть такое замечательное средство, как язык программирования MQL4, с помощью которого можно легко написать эксперта, который сам все подсчитает и сам все расскажет о результатах расчетов. Итак, что нам нужно:
Все это возможно задать во внешних переменных предлагаемого скрипта - script_Statistics_candles. Посмотрим на нижеследующий рисунок.
Рис. 2. Входные параметры скрипта На рисунке 2 показаны входные параметры, которые можно изменять в скрипте. Open_session - Время начала исследуемой сессии Close_session - Время окончания исследуемой сессии Period_time - Таймфрейм, на которых скрипт считает вероятность повторения свечей. Может принимать одно из следующих значений - 5, 15, 30, 60, 240. Прошу запомнить, что допустимы только эти и никакие другие значения. Соответственно, эти значения будут соответствовать периодам графиков - 5, 15, 30 минут, 1 час и 4 часа. //+------------------------------------------------------------------+ //| script_Statistics_candles_V2.mq4 | //| Copyright © 2009, Игорь Александров | //| sydiya@rambler.ru | //+------------------------------------------------------------------+ #property copyright "Copyright © 2009, Игорь Александров" #property link "sydiya@rambler.ru" #property show_inputs //---- Входные параметры extern string Open_session ="2009.11.20"; //Дата открытия исcледуемой сессии extern string Close_session = "2009.11.26"; //Дата закрытия исcледуемой сессии extern int Period_time = 60; //Период графика, на котором будет работать эксперт, //может принимать значения 5;15;30;60;240 //----------------------------------------------------------------- int Day_bars_i; //Номер дня для i-го бара в сессии double Mas_vira_maina[24,60]={0,0 0,0}, //Объявляем массив для баров с равной ценой открытия - закрытия Mas_vira[24,60]={0,0 0,0}, //Объявляем массив для вычислений бычьих баров Mas_maina[24,60]={0,0 0,0}, //Объявляем массив для вычислений медвежьих баров Mas_kol_vo[24,60]={0,0 0,0}, //Обьявляем массив для вычислений кол-ва подсчитаных баров Mas_profit[24,60]={0,0 0.0}, //Обьявляем массив для вычислений профита по open-close Mas_H_L[24,60]={0,0 0.0}; //Обьявляем массив для вычислений профита по high-low string Symb; //Название финанс. инструмента, на котором исполняется скрипт bool New_day = false; //Флаг нового дня //-------------------------------------------------------------------- //----------------------------Стартуем-------------------------------- int start() { //-общая открывающая скобка Print("----------------------------------------------------------------------"); Print(" Результаты работы скрипта- Statistics_candles- ",TimeToStr(TimeCurrent( )) ); Print(" Расчет проведен с ",Open_session," до ",Close_session); //------------------------Обьявляем переменные ---------------------- int Hour_open_bars, //Номер часа открытия i-го бара в сессии Minute_open_bars, //Номер минуты открытия i-го бара в сессии Shift_open, //Номер бара с временем открытия Open_session Shift_close, //Номер бара с временем открытия Close_session Shift_open_close, //Количество баров в сессии Total_day=0; //Счетчик количества подсчитанных дней double Open_bars_price, //Цена открытия i-го бара сессии Close_bars_price, //Цена закрытия i-го бара сессии Low_bars_price, //Минимальная цена i-го бара сессии High_bars_price, //Максимальная цена цена i-го бара сессии Total_bars=0; //Кол-во исследуемых баров при старте скрипта datetime Time_open_session, //Время открытия первого бара исследуемой сессии //в формате datatime Time_close_session, //Время открытия последнего бара исследуемой //сессии в формате datatime Time_open_bars; //Время открытия баров в формате datatime bool Session_vira=false, //Флаг бычьей сессии Session_maina=false; //Флаг медвежьей сессии //-----------------------Конец обьявления переменных ------------------ Symb=Symbol(); // Название фин.инструмента //Запрашиваем время начала исследуемой сессии в формате datatime Time_open_session= StrToTime(Open_session); //Запрашиваем время закрытия исследуемой сессии в формате datatime Time_close_session= StrToTime(Close_session); //Запрашиваем номер бара, открывающего сессию Shift_open=iBarShift( Symb,Period_time, Time_open_session,false); //Запрашиваем номер бара,закрывающего сессию Shift_close=iBarShift( Symb,Period_time, Time_close_session,false); //--------------------------------------------------------------------- for(int i = Shift_open; i>=Shift_close; i --) //Цикл перебора баров в сессии { //Открывающая скобка цикла переборов баров Total_bars++; //Счетчик кол-ва исследуемых баров static int New_day_shift=0; //Номер дня при старте советника // Запрашиваем время открытия i-го бара в сессии Time_open_bars=iTime( Symb,Period_time,Shift_open-Total_bars); //Запрашиваем час открытия i-го бара в сессии Hour_open_bars=TimeHour(Time_open_bars); //Запрашиваем минуту открытия i-го бара в сессии Minute_open_bars=TimeMinute(Time_open_bars); // Запрашиваем номер дня для i-го бара в сессии Day_bars_i=TimeDayOfYear( Time_open_bars); //Если номер дня первого бара в сессии не равен номеру i-го дня,то if(New_day_shift!=Day_bars_i) { New_day = true; //флаг нового дня сработал New_day_shift=Day_bars_i; //и присваиваем номеру дня номер i-го бара Total_day++; //Счетчик дней увеличиваем на единицу } else //в противном случае { New_day = false; //флаг нового дня не сработал } //Запрашиваем цену открытия i-го бара Open_bars_price= iOpen( Symb, Period_time,i); //Запрашиваем цену закрытия i-го бара Close_bars_price=iClose( Symb, Period_time,i); //Запрашиваем минимальную цену i-го бара Low_bars_price=iLow( Symb, Period_time,i); //Запрашиваем максимальную цену i-го бара High_bars_price=iHigh( Symb, Period_time,i); //Если цена открытия бара меньше цены закрытия, то сессия бычья if(Open_bars_price<Close_bars_price) { //Значение массива в соответствующей ячейке увеличиваем на единицу Mas_vira[Hour_open_bars,Minute_open_bars]=Mas_vira[Hour_open_bars,Minute_open_bars]+1; //Значение массива в соответствующей ячейке увеличиваем на единицу Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; //В массив заносим разницу между ценой открытия и закрытия в пунктах Mas_profit[Hour_open_bars,Minute_open_bars]= Mas_profit[Hour_open_bars,Minute_open_bars]+(Close_bars_price-Open_bars_price)/Point; //В массив заносим разницу между максимальной и минимальной ценой бара в пунктах Mas_H_L[Hour_open_bars,Minute_open_bars]= Mas_H_L[Hour_open_bars,Minute_open_bars]+(High_bars_price-Low_bars_price)/Point; } //Если цена открытия бара больше цены закрытия, то сессия медведей if(Open_bars_price>Close_bars_price) { //Значение массива увеличиваем на единицу Mas_maina[Hour_open_bars,Minute_open_bars]=Mas_maina[Hour_open_bars,Minute_open_bars]+1; //Значение массива в соответствующей ячейке увеличиваем на единицу Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; //В массив заносим разницу между ценой открытия и закрытия в пунктах Mas_profit[Hour_open_bars,Minute_open_bars]= Mas_profit[Hour_open_bars,Minute_open_bars]+(Open_bars_price-Close_bars_price)/Point; //В массив заносим разницу между максимальной и минимальной ценой бара в пунктах Mas_H_L[Hour_open_bars,Minute_open_bars]= Mas_H_L[Hour_open_bars,Minute_open_bars]+(High_bars_price-Low_bars_price)/Point; } //Если цена открытия бара равна цены закрытия, то сессия никакая if(Open_bars_price==Close_bars_price) { //Значение массива увеличиваем на единицу Mas_vira_maina[Hour_open_bars,Minute_open_bars]=Mas_vira_maina[Hour_open_bars,Minute_open_bars]+1; //Значение массива в соответствующей ячейке увеличиваем на единицу Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; //Значение масива оставляем таким же Mas_profit[Hour_open_bars,Minute_open_bars]= Mas_profit[Hour_open_bars,Minute_open_bars]+0; //В массив заносим разницу между максимальной и минимальной ценой бара в пунктах Mas_H_L[Hour_open_bars,Minute_open_bars]= Mas_H_L[Hour_open_bars,Minute_open_bars]+(High_bars_price-Low_bars_price)/Point; } } //Закрывающая скобка цикла перебора баров //--------------------------Выводим информацию в журнал экспертов------------------- Print("Обработано - ",Total_day," дней; ",Total_bars," баров, по ",Period_time," минут"); for (int h=0; h<=23; h++) //Цикл перебора часов { for (int m=0; m<=60; m++) //Цикл перебора минут { if (Mas_kol_vo[h,m]!=0) //Если значение массива не равно 0, то считаем дальше { Print("За расчитанный период, среди ",Mas_kol_vo[h,m], " баров,с временем открытия ",h,":",m, " .Бычьих- ",Mas_vira[h,m], ".Медвежьих- ",Mas_maina[h,m], ".Равных - ",Mas_vira_maina[h,m]); Print("У баров с временем открытия ",h,":",m, " ,среднее расстояние между ценами Open-Close - ",Mas_profit[h,m]/Mas_kol_vo[h,m], " пунктов.Между High-Low - ",Mas_H_L[h,m]/Mas_kol_vo[h,m]," пунктов."); } Mas_vira_maina[h,m]=0; //Обнуляем значение массива Mas_vira[h,m]=0; //Обнуляем значение массива Mas_maina[h,m]=0; //Обнуляем значение массива Mas_kol_vo[h,m]=0; //Обнуляем значение массива Mas_profit[h,m]=0; //Обнуляем значение массива Mas_H_L[h,m]=0; //Обнуляем значение массива } //Конец цикла перебора минут } //Конец цикла перебора часов Print("-------------- Скрипт закончил работу --------------------"); return(0); } //-общая закрывающая скобка Как видите, я объявляю шесть массивов на глобальном уровне под вычисления. double Mas_vira_maina[24,60]={0,0 0,0}, //Объявляем массив для баров с равной ценой открытия - закрытия Mas_vira[24,60]={0,0 0,0}, //Объявляем массив для вычислений бычьих баров Mas_maina[24,60]={0,0 0,0}, //Объявляем массив для вычислений медвежьих баров Mas_kol_vo[24,60]={0,0 0,0}, //Объявляем массив для вычислений кол-ва посчитанных баров Mas_profit[24,60]={0,0 0.0}, //Объявляем массив для вычислений профита по open-close Mas_H_L[24,60]={0,0 0.0}; //Объявляем массив для вычислений профита по high-low В буфер Mas_kol_vo будем заносить количество подсчитанных баров. Зачем это нужно. Казалось бы, значение ячеек массивов для open-close и high-low можно поделить на количество подсчитанных дней, тем более и счетчик в коде имеется- Total_day. Но в процессе работы над скриптом я столкнулся с отсутствием некоторых баров в истории, поэтому получались иногда интересные результаты. Например, высота некоторых баров получалась уж совсем нереальной. Для чего нужны остальные массивы понятно из комментариев. Ну а теперь собственно, проверим повторяемость баров при разных направлениях тренда. Для этого возьмем часовой график на USDJPY показанный на рис 1. Как видно из рисунка с 20.11.2009 по 26.11.2009, график имеет медвежью направленность, с 26.11.2009 по 2.12.2009 на графике боковой тренд и с 2.12.2009 по 8.12.2009 бычий тренд. Проверим, есть ли за этот период повторяющиеся свечи и если есть, то как меняется их направление. Ставим скрипт на часовой график. Для тех, кто не знает, как это сделать, расскажу чуть подробнее. Сам скрипт -script_Statistics_candles_V2.mq4, скачиваем в папку \Program Files\Название терминала\expert\scripts. Компилируем. Скрипт появится в левом нижнем углу, в окошке под названием "Навигатор". Выглядит это примерно так: Рис.3 Окно навигатора Из этого окна достаточно перетащить мышью скрипт в окно терминала, появится окно свойств - рис. 2. Выставляем дату начала и конца работы скрипта. Для того чтобы понимать логику наших действий, прошу представить следующее. Как бы первое, что вы делаете утром, встав с постели, это запуск данного скрипта. Результаты его работы вы заносите в табличку, по типу той что будет представлена ниже под номером 1. Ваша задача попытаться понять, на результатах работы скрипта, как будут развиваться события на рынке в ближайшие сутки, а может и двое. Итак, сегодня как будто 26 ноября 2009 года. Вы запускаете скрипт, Вас интересует статистика по свечам за последние, скажем, 6 календарных дней. То есть в свойствах скрипта вы выставляете: Open_session- 2009.11.20 (шесть дней назад), Close_session - 2009.11.26 (то есть сегодня), таймфрейм для расчета можете взять любой, я буду на часовом графике, т.е Period_time=60. И так мы будем делать ежедневно, увеличивая время начала и конца работы скрипта каждый раз на один день. Мы же будем это делать на исторических данных. Нажимаем кнопку "ОК" в свойствах, в папке экспертов в Log файле, появилась запись: 21:05:46 script_Statistics_candles_V2 USDJPY,H1 inputs: Open_session="2009.11.20"; Close_session="2009.11.26"; Period_time=60; Результаты работы заносим в таблицу. Договоримся, что количество бычьих баров будем заносить в колонку "Б", медвежьих - в колонку "М", бары "никаких" свечей в таблицу заносить не будем.
Таблица 1. Результаты работы эксперта Ну что ж, давайте посмотрим на результаты. Ну во-первых оказалось - некоторые бары, в одно и то же время, имеют одинаковую направленность, что само по себе интересно. Обратите внимание на ячейки, подкрашенные разными цветами. Желтым цветом я подкрасил ячейки в которых бары были только медвежьи за последние 6 дней, розовым цветом закрашены ячейки, соответствующие только бычьим барам. 26 ноября мы видим, что за последние 6 дней бары с временем открытия 4, 9, и 16 часов всегда были медвежьи. Стоит предположить, что медведи сильны и сегодня, а возможно и завтра рынок будет медвежий. 27 ноября. Наш прогноз оправдался. По результатам работы скрипта видим, что за последние 6 дней в 6, 12, 16, 21 часов, свечи были только медвежьи, предполагаем, что рынок будет медвежий. 28 ноября. Наш прогноз оправдался. За последние 6 дней количество только медвежьих свечей резко уменьшилось, и только в 21 час они были полностью медвежьи. Стоит предположить, что медведи выдыхаются, и тренд будет меняться. 29,30 ноября, 1 и 2 января картина та же. Сидим в боковом тренде. Но что интересно, со 2-го числа начинают появляться только бычьи свечи, предполагаем смену тренда, в течении дня убеждаемся, что были правы. Интересную картину будем наблюдать 5 и 6 декабря. Нет ни одного временного интервала, где были бы свечи одной направленности. Что-то должно произойти. Смотрим на терминал и с облегчением видим, что это были выходные. 7 декабря опять разнонаправленные свечи, опять ждем смену тренда. 8 декабря чисто бычьи свечи в 11 и 12 часов. На рисунке 1 тренд то вроде медвежий? Но заглянем в терминал и с удивлением видим, что примерно с 12 часов тренд начнет меняться на боковой, а с 9 декабря начнется бычий тренд. Ну что ж. Как видим 100% верным данный метод быть не может, да и нет пока такого инструмента. Но может стать сильным подспорьем совместно с другими методами технического анализа в предсказании поведения рынка на ближайший день - два. ЗаключениеПри написании данной статьи я ставил перед собой три задачи:
Понятно, что в рамках одной статьи, я не мог очень глубоко анализировать поведение свечей на разных временных графиках, да собственно, и не собирался. Каждый сам способен исследовать те пары и те таймфреймы которые ему по душе. В прикрепленном файле сам скрипт. Спасибо. Предупреждение:
все права на данные материалы
принадлежат MetaQuotes Software Corp. Полная или частичная перепечатка запрещена.
Интересно, вот тут похожая идея торговли на основе статистической повторяемости http://www.regulest.ru/forex%20forum/index.php?topic=54.0
25.02.2010 16:59 ken74
sydiya писал(а):
1) "Среднесессионных" - берем какое-то время, которое можно настраивать, скажем с 02:00 до 12:00. Да, и так временной интревал для азиатской, европейской и американской. Считаем среднее по свечам(H+L+O+C)/4.Сразу вопрос - по каким свечам, то есть 5 минут, 30 минут, 1 час и т.д. Без разницы. Тут как то я не очень понимаю. Если внутри сессии кривая еще будет менять, то за пределами сессии - это просто прямая, ведь нечего уже не меняется. Или просто берем среднюю за сессию - за позавчера, вчера, сегодня и по этим точкам строим кривую? Кстати само понятие средней требует уточнения. Ее тоже по разному считают. Предлагаю так -( цена открытия(О) + цена закрытия(с) + цена максимальная(H) + цена минимальная(L) )/4 Думаю ответил постом ниже... или нет? 2) "Среднедневных" и прочее - это как бы понятно. 3")Инфа в подокне". Какого рода инфа. Ну скажем так. Все линии разного цвета, а в нижнем левом углу экрана в кружочках соответствующего цвета - последняя средняя цена этих линий на данный момент. Думаю это должна быть подробная инфа по среднему размеру тела дневной, недельной, месяцной свечи, их теней, размер диапазона за предыдущие n- сессий/дней/недель/месяцев. Позже постапраюсь предложить конкретную инфу. 4)"Линии диапазонов не горизонтальные, прямые, а представляется корридором, состоящих из кривых по обе стороны от цены, которые, пропорционально движению цены, т.е. расхода среднего лимита ее хода в соответствующий временной период(сессия, день, неделя, месяц), постепенно сужаются к ней." - вот тут совсем нечего не понял. Поэтому и скрины показываю, что язык корявый:) Так вот по пунктикам и постараемся понять друг друга.
23.02.2010 13:47 sever29
Доброго времени суток. Для наглядного представления отрисовки и динамики изменения границ среднедневного диапазона в течении дня, высылаю Вам два скрина, на одном отобразил линии среднедневного диапазона за последние 60 дней с пояснениями. На другом показаны 11 среднедневных диапазонов, с разным количеством отсчета дней, для вычесления среднего диапазона. А именно- средний диапазон за 1 день, 5 дн, 21дн, 72дн, 144дн, 233дн, 288дн и т.д. Таким же образом должен отображаться средненедельный, среднемесячный и средненессионный диапазон, но только средненедельный- без учета дней, среднемесячный- без учета дней и недель, а среднесессионный, должен учитывать только усредненный диапазон, аналагичной сессий за опреленное количество дней. Позже сформулирую, какая инфа дожна отображаться. Прикрепленные файлы:
23.02.2010 13:38 sever29
Доброго времени суток. Для наглядного представления отрисовки и динамики изменения границ среднедневного диапазона в течении дня, высылаю Вам два скрина, на одном отобразил линии среднедневного диапазона за последние 60 дней с пояснениями. На другом показаны 11 среднедневных диапазонов, с разным количеством отсчета дней, для вычесления среднего диапазона. А именно- средний диапазон за 1 день, 5 дн, 21дн, 72дн, 144дн, 233дн, 288дн и т.д. Таким же образом должен отображаться средненедельный, среднемесячный и средненессионный диапазон, но только средненедельный- без учета дней, среднемесячный- без учета дней и недель, а среднесессионный, должен учитывать только усредненный диапазон, аналагичной сессий за опреленное количество дней. Позже сформулирую, какая инфа дожна отображаться. Прикрепленные файлы:
23.02.2010 13:38 sever29
sydiya писал(а):
Extremum писал(а)
Да впринципе любой. Я делал .CSV - текстовый файл с разделителями. Можно редактировать в блокноте, как обычный текстовый файл, можно в Excel - информация разбивается по ячейкам. Делал также файл в .HTML и автоматом выставлял его на интернет каждые 5 минут. Просто с любого компа заходишь на интернет и смотришь все что надо в обычном браузере. У меня была облегченная версия (без графики и всего прочего) потому что я с телефона заходил, но можно полнофункциональную веб-страницу рисовать... Понял.Я в общем то не очень вижу необходимость в этом. Вообще я торгую в тех ДЦ у кого есть мобильная версия МТ4. И с коммуникатора изредка заглядываю. Хотя сказать откровенно это - "изредка заглядываю", не к чему хорошему не приводит, обязательно что нибудь поправишь, и обязательно в конечном итоге окажешься не прав. Человеческий фактор. Ну вывод информации на интернет - не главная цель моего сообщения, это просто пример о формате файлов. Если я правильно понял, здесь был разговор о том, как записать историю в удобном для читателя виде. Так вот я думаю, лучше всего наверное будет выводить в Excel, там удобно обрабатывать, сортировать, графики разные рисовать...
22.02.2010 23:57 Extremum
sever29 писал(а)
Индикатор..., индикатор среднесессионых, среднедневных, средненедельных и среднемесячных диапазонов с выводом самих линий диапазонов на график, а инфа по ним в подокне. Линии диапазонов не горизонтальные, прямые, а представляется корридором, состоящих из кривых по обе стороны от цены, которые, пропорционально движению цены, т.е. расхода среднего лимита ее хода в соответствующий временной период(сессия, день, неделя, месяц), постепенно сужаются к ней. Не могу оценить сложность алгоритма...
1) "Среднесессионных" - берем какое-то время, которое можно настраивать, скажем с 02:00 до 12:00. Считаем среднее по свечам(H+L+O+C)/4.Сразу вопрос - по каким свечам, то есть 5 минут, 30 минут, 1 час и т.д. Тут как то я не очень понимаю. Если внутри сессии кривая еще будет менять, то за пределами сессии - это просто прямая, ведь нечего уже не меняется. Или просто берем среднюю за сессию - за позавчера, вчера, сегодня и по этим точкам строим кривую? Кстати само понятие средней требует уточнения. Ее тоже по разному считают. Предлагаю так -( цена открытия(О) + цена закрытия(с) + цена максимальная(H) + цена минимальная(L) )/4 2) "Среднедневных" и прочее - это как бы понятно. 3")Инфа в подокне". Какого рода инфа. Ну скажем так. Все линии разного цвета, а в нижнем левом углу экрана в кружочках соответствующего цвета - последняя средняя цена этих линий на данный момент. 4)"Линии диапазонов не горизонтальные, прямые, а представляется корридором, состоящих из кривых по обе стороны от цены, которые, пропорционально движению цены, т.е. расхода среднего лимита ее хода в соответствующий временной период(сессия, день, неделя, месяц), постепенно сужаются к ней." - вот тут совсем нечего не понял. Так вот по пунктикам и постараемся понять друг друга.
22.02.2010 08:55 sydiya
sydiya писал(а):
Ну Север. Чего замолчал. Обиделся?Да, ладно тебе, сам знаю за собой черту быть резким. Дурацкая черта. Давай я тебе скриптик какой нибудь напишу или эксперта - только попроще алгоритм какой нибудь. :) все ок. Индикатор..., индикатор среднесессионых, среднедневных, средненедельных и среднемесячных диапазонов с выводом самих линий диапазонов на график, а инфа по ним в подокне. Линии диапазонов не горизонтальные, прямые, а представляется корридором, состоящих из кривых по обе стороны от цены, которые, пропорционально движению цены, т.е. расхода среднего лимита ее хода в соответствующий временной период(сессия, день, неделя, месяц), постепенно сужаются к ней. Не могу оценить сложность алгоритма...
21.02.2010 15:06 sever29
sever29 писал(а):
может Вам процитировать ТЗ, где я просил структурировать инфу ввиде таблицы? Не можете или время нет, так и скажите. Ну Север. Чего замолчал. Обиделся?Да, ладно тебе, сам знаю за собой черту быть резким. Дурацкая черта. Давай я тебе скриптик какой нибудь напишу или эксперта - только попроще алгоритм какой нибудь.
21.02.2010 09:11 sydiya
Extremum писал(а)
Да впринципе любой. Я делал .CSV - текстовый файл с разделителями. Можно редактировать в блокноте, как обычный текстовый файл, можно в Excel - информация разбивается по ячейкам. Делал также файл в .HTML и автоматом выставлял его на интернет каждые 5 минут. Просто с любого компа заходишь на интернет и смотришь все что надо в обычном браузере. У меня была облегченная версия (без графики и всего прочего) потому что я с телефона заходил, но можно полнофункциональную веб-страницу рисовать... Понял.Я в общем то не очень вижу необходимость в этом. Вообще я торгую в тех ДЦ у кого есть мобильная версия МТ4. И с коммуникатора изредка заглядываю. Хотя сказать откровенно это - "изредка заглядываю", не к чему хорошему не приводит, обязательно что нибудь поправишь, и обязательно в конечном итоге окажешься не прав. Человеческий фактор.
21.02.2010 09:06 sydiya
sydiya писал(а):
Extremum писал(а):
Я, все равно не улавливаю.Что значит сделать запись в обычный файл. Обычный файл - это какой? С каким расширением?sydiya писал(а):
Нет, я имею ввиду запись в обычный файл, причем записывать все что хотите и в любом формате. После этого, его можно нормально открыть в Excel и делать с информацией все что угодно... Правда слишком большие файлы Excel уже не хочет открывать полностью. Но это уже проблема Excel, а не MetaTrader. Хотя можно сделать, чтобы каждый месяц новый файл создавался, например...Extremum писал(а):
Можно очень просто сделать запись в текстовый файл. У меня несколько месяцев подобрая статистика работает... Я не очень понял, что значит сделать запись в текстовой файл. Скрипт и делает запись в текстовой файл журнала экспертов. Или Вы что то имеете в виду другое? Да впринципе любой. Я делал .CSV - текстовый файл с разделителями. Можно редактировать в блокноте, как обычный текстовый файл, можно в Excel - информация разбивается по ячейкам. Делал также файл в .HTML и автоматом выставлял его на интернет каждые 5 минут. Просто с любого компа заходишь на интернет и смотришь все что надо в обычном браузере. У меня была облегченная версия (без графики и всего прочего) потому что я с телефона заходил, но можно полнофункциональную веб-страницу рисовать...
20.02.2010 04:07 Extremum
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||