Автономный график надо автономно оновлять. Тогда советник запустится.
Можно обновлять неавтономно. В библиотеке есть функции для этого. Раздел 4.7.
Автономный график надо автономно оновлять. Тогда советник запустится.
Можно обновлять неавтономно. В библиотеке есть функции для этого. Раздел
Так делаю:
#include <ServicesMT4.mqh> void init() {// Включаем автономное обновление графика. ServiceRefreshChart(WindowHandle(Symbol(), 0), 100); } int start() {// Если советник зацикленный, как ниже, то так: ServiceStopRefreshChart(WindowHandle(Symbol(), 0)); while (!IsStopped()) { ... Sleep(1000); { }
Так делаю:
незнаю... не понимаю... вообще... если не трудно можете прописать как надо(по вашему усмотрению, у вас то опыта навалом) т.е. чтоб работал на ренко и выложить? очень прошу
Выше написал.
Дело не в ренко. Любой автономный график надо обновлять, чтобы на нём работали советник и индикаторы.
Есть вполне стандартное решение:
#include <WinUser32.mqh>
#include <stdlib.mqh>
//+------------------------------------------------------------------+
#import "user32.dll"
int RegisterWindowMessageA(string lpString);
#import
extern bool EmulateOnLineChart = true;
extern bool StrangeSymbolName = false;
//+------------------------------------------------------------------+
int HstHandle = -1, LastFPos = 0, MT4InternalMsg = 0;
string SymbolName;
//+------------------------------------------------------------------+
void UpdateChartWindow() {
static int hwnd = 0;
if(hwnd == 0) {
hwnd = WindowHandle(SymbolName, RenkoTimeFrame);
if(hwnd != 0) Print("Chart window detected");
}
if(EmulateOnLineChart && MT4InternalMsg == 0)
MT4InternalMsg = RegisterWindowMessageA("MetaTrader4_Internal_Message");
if(hwnd != 0) if(PostMessageA(hwnd, WM_COMMAND, 0x822c, 0) == 0) hwnd = 0;
if(hwnd != 0 && MT4InternalMsg != 0) PostMessageA(hwnd, MT4InternalMsg, 2, 1);
return;
}
вызывать функцию можно где то в конце start() советника который строит данные для ренко, после того как построились все данные в offline графике.
// где SymbolName - название символа offline графика
// RenkoTimeFrame - таймфрейм offline графика
Выше написал.
Дело не в ренко. Любой автономный график надо обновлять, чтобы на нём работали советник и индикаторы.
пытаюсь. не выходит каждый раз новые ошибки в компиляции. если устранить ошибку (каким то образом) они снова появляются.
Есть вполне стандартное решение:
#include <WinUser32.mqh>
#include <stdlib.mqh>
//+------------------------------------------------------------------+
#import "user32.dll"
int RegisterWindowMessageA(string lpString);
#import
extern bool EmulateOnLineChart = true;
extern bool StrangeSymbolName = false;
//+------------------------------------------------------------------+
int HstHandle = -1, LastFPos = 0, MT4InternalMsg = 0;
string SymbolName;
//+------------------------------------------------------------------+
void UpdateChartWindow() {
static int hwnd = 0;
if(hwnd == 0) {
hwnd = WindowHandle(SymbolName, RenkoTimeFrame);
if(hwnd != 0) Print("Chart window detected");
}
if(EmulateOnLineChart && MT4InternalMsg == 0)
MT4InternalMsg = RegisterWindowMessageA("MetaTrader4_Internal_Message");
if(hwnd != 0) if(PostMessageA(hwnd, WM_COMMAND, 0x822c, 0) == 0) hwnd = 0;
if(hwnd != 0 && MT4InternalMsg != 0) PostMessageA(hwnd, MT4InternalMsg, 2, 1);
return;
}
вызывать функцию можно где то в конце start() советника который строит данные для ренко, после того как построились все данные в offline графике.
// где SymbolName - название символа offline графика
// RenkoTimeFrame - таймфрейм offline графика
так тоже не получится експерт который строит ренко не редактируется т.е. метаедитор ничего не видит
пытаюсь. не выходит каждый раз новые ошибки в компиляции. если устранить ошибку (каким то образом) они снова появляются.
так тоже не получится експерт который строит ренко не редактируется т.е. метаедитор ничего не видит
тогда создай советник, впиши туда функцию, укажи правильные SymbolName и RenkoTimeFrame. и закинь на какой нить график.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
доброго времени суток. советник не запускается на ренко. я нашел решение и самостоятельно внедрил специальный код для для других советников несколько раз и они успешно запустились.
дело в том что данный советник написан по другому и мне не понятен код.
дорогие программисты к вам просьба. пожалуйста внедрите этот код в код советника ПРАВИЛЬНО (я попытался но вышло НЕ ПРАВИЛЬНО) чтоб он торговал на ренко.
вот код