Вы предлагаете код индикатора засовывать в советник и там его пересчитывать?
А если таких индикаторов 5?
нет ли возможности как то пересчитать по другому?
я же все индикаторы в советник прикрепляю через iCustom
Вызов индикатора и его последнего значения и так происходит на каждом новом баре, но он не перерисовывается в торгуемом окне инструмента до тех пор пока пока не сменишь таймфрейм и вернешься обратно.
Если на графике нажать ПКМ и нажать обновление, то перерисовки тоже нету, она почему то перерисовывается только при смене таймфрейма.
Мне не ведомы Ваши фантазии. Чтобы получить красивую картинку от индикатора, нужно поковыряться в его коде. В частности, с переменной limit. В данном индикаторе она присутствует. Кстати, судя по коментам к этому индикатору, автор запретил индикатору перерисовку, а Вы сделайте так, как Вам угодно, но от этого Вы не получите ожидаемого, так как суть перерисовки - это появление сигнала несколько баров назад.
Мне не ведомы Ваши фантазии. Чтобы получить красивую картинку от индикатора, нужно поковыряться в его коде. В частности, с переменной limit. В данном индикаторе она присутствует. Кстати, судя по коментам к этому индикатору, автор запретил индикатору перерисовку, а Вы сделайте так, как Вам угодно, но от этого Вы не получите ожидаемого, так как суть перерисовки - это появление сигнала несколько баров назад.
Удачи.
В метатрейдере в любом окне инструмента если нажать правую кнопку мыши есть кнопка Обновление
//=====================================================================================================================================================================// 4.7. Функции для управления обновлением графика.//=====================================================================================================================================================================// 4.7.1. Функция запускает обновление всех графиков с указанным периодом. Если обновление уже запущено, то функция меняет период обновления графиков.// Останавливается обновление функциями "ServiceStopRefreshChart()" или "ServiceStopRefreshAllCharts()" или закрытием графика.void ServiceRefreshAllCharts(int nPeriodMilliSec); // Период обновления графика в миллисекундах.//=====================================================================================================================================================================// 4.7.2. Функция запускает обновление всех графиков однократно. Вызов функции при работающих других режимах останавливает обновление всех графиков.void ServiceRefreshAllOnceCharts();
//=====================================================================================================================================================================// 4.7.3. Функция запускает обновление указанного графика с указанным периодом. Если обновление уже запущено, то функция меняет только период обновления графика.// Останавливается обновление функциями "ServiceStopRefreshChart()" или "ServiceStopRefreshAllCharts()" или закрытием графика.void ServiceRefreshChart(int hwndChart, // Системный дескриптор обновляемого графика.int nPeriodMilliSec); // Период обновления графика в миллисекундах.//=====================================================================================================================================================================// 4.7.4. Функция останавливает обновление указанного графика.void ServiceStopRefreshChart(int hwndChart); // Системный дескриптор графика, на котором останавливается обновление.//=====================================================================================================================================================================// 4.7.5. Функция корректно останавливает обновление всех графиков при bTerminate = FALSE, иначе функция завершает обновление аварийно.void ServiceStopRefreshAllCharts(int bTerminate); // Флаг аварийной остановки потоков обновления графиков.// FALSE - потоки останавливаются корректно, TRUE - потоки останавливаются аварийно.//=====================================================================================================================================================================// 4.7.6. Функция эммулирует тик для эксперта на указанном графике.void ServiceTickExpert(int hwndChart); // Системный дескриптор окна графика, для эмуляции тика для эксперта.//=====================================================================================================================================================================// 4.7.7. Функция эммулирует тик для индикаторов на указанном графике.void ServiceTickIndicators(int hwndChart); // Системный дескриптор окна графика, для эмуляции тика для индикаторов.
Только лучше подождать немного. Выложил новую версию. Может сегодня модераторы опубликуют.
Twilight: В метатрейдере в любом окне инструмента если нажать правую кнопку мыши есть кнопка Обновление
как то программно вызвать эту функцию можно?
RefreshRates вроде бы не то.
#import "user32.dll"
int PostMessageA (int hWnd, int Msg, int wParam, int lParam);
#import
PostMessageA (WindowHandle (Symbol(), Period()), 0x0111, 33324, 0);
Вы предлагаете код индикатора засовывать в советник и там его пересчитывать?
А если таких индикаторов 5?
нет ли возможности как то пересчитать по другому?
я же все индикаторы в советник прикрепляю через iCustom
Вызов индикатора и его последнего значения и так происходит на каждом новом баре, но он не перерисовывается в торгуемом окне инструмента до тех пор пока пока не сменишь таймфрейм и вернешься обратно.
Если на графике нажать ПКМ и нажать обновление, то перерисовки тоже нету, она почему то перерисовывается только при смене таймфрейма.
Мне не ведомы Ваши фантазии. Чтобы получить красивую картинку от индикатора, нужно поковыряться в его коде. В частности, с переменной limit. В данном индикаторе она присутствует. Кстати, судя по коментам к этому индикатору, автор запретил индикатору перерисовку, а Вы сделайте так, как Вам угодно, но от этого Вы не получите ожидаемого, так как суть перерисовки - это появление сигнала несколько баров назад.
Удачи.
Мне не ведомы Ваши фантазии. Чтобы получить красивую картинку от индикатора, нужно поковыряться в его коде. В частности, с переменной limit. В данном индикаторе она присутствует. Кстати, судя по коментам к этому индикатору, автор запретил индикатору перерисовку, а Вы сделайте так, как Вам угодно, но от этого Вы не получите ожидаемого, так как суть перерисовки - это появление сигнала несколько баров назад.
Удачи.
как то программно вызвать эту функцию можно?
RefreshRates вроде бы не то.
Подскажите, как в двух-трех строчках реализовать код советника:
При поступлении сигнала (напр. пересечения двух МА)
1.Советник определяет время поступления сигнала(в часах, минутах),запоминает его;
2.Отсчитывает одну минуту.
Далее, готовность совершить какое-либо действие(напр. открытие ордера)
В метатрейдере в любом окне инструмента если нажать правую кнопку мыши есть кнопка Обновление
как то программно вызвать эту функцию можно?
RefreshRates вроде бы не то.
Библиотека. Вам нужна 4.7.7 ServiceTickIndicators().
Только лучше подождать немного. Выложил новую версию. Может сегодня модераторы опубликуют.
Библиотека. Вам нужна 4.7.7 ServiceTickIndicators().
Только лучше подождать немного. Выложил новую версию. Может сегодня модераторы опубликуют.
Платная?
В метатрейдере в любом окне инструмента если нажать правую кнопку мыши есть кнопка Обновление
как то программно вызвать эту функцию можно?
RefreshRates вроде бы не то.
Но, только Вам это ничего не даст... :)
Платная?
Но, только Вам это ничего не даст... :)
Даст перерисовать визуально.
Прогнать в цикле последнии N баров и если сигнал был то сигнал=true
А там уже можно крутить что угодно с любыми другими не перерисовывающими индикаторами.
PostMessageA (WindowHandle (Symbol(), Period()), 0x0111, 33324, 0);
Где вставлять? В начале Старта?
Спасибо.
Даст перерисовать визуально.
Прогнать в цикле последнии N баров и если сигнал был то сигнал=true
А там уже можно крутить что угодно с любыми другими не перерисовывающими индикаторами.
PostMessageA (WindowHandle (Symbol(), Period()), 0x0111, 33324, 0);
Где вставлять? В начале Старта?
Спасибо.
Перед вызовом индикатора (можно и в начале start()).
P.S. Все "бегут" от перерисовки, а Вы за ней - нестандартно... :))
Перед вызовом индикатора (можно и в начале start()).
P.S. Все "бегут" от перерисовки, а Вы за ней - нестандартно... :))
Ну вот к примеру такой вариант. перерисовываем на м5 и проверяем есть ли сигнал последние 12 баров.
И на новой м15 м30 проверяем был ли сигнал на м5 и является ли цена еще актуальной то есть удовлетворяет по требованиям для входа.
А также можно анализировать сколько раз в течении этого же часа. сигнал изменялся,пропадал и т.п.
Причем у сигнала же есть название и можно анализировать сам график визуально по названию =)
В общем целое не паханное поле для эксперементов. а пока вот такой результат =)
Со своей модификацией
http://komplekt73.ru/forex/m5chastr.htm