Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Мне очень нравятся эти круги конфликта, и я хотел бы применить их на своих графиках MT4. Есть ли версия, которая работает? Xard777 сделал одну несколько лет назад, но библиотека таймфреймов содержит массивы, которые нечитаемы для MetaEditor в наши дни. Я пробовал, но у меня не получается.
Мне очень нравятся эти круги конфликта и я хотел бы применить его на своих графиках MT4. Есть ли версия, которая работает? Xard777 сделал одну несколько лет назад, но библиотека таймфреймов содержит массивы, которые не читаются MetaEditor'ом в наши дни. Я пробовал, но у меня не получается.
krelian99
О каком именно коде вы говорите?
Я написал Xard777 ЛС на другом форуме и здесь, но он не появлялся до сих пор. У меня было немного времени и сейчас я прочитал заголовок. Стыдно за меня (я мог бы спросить раньше). The Murray Math files(http://www.forexfactory.com/showthre...73#post4071573)- это совместная работа Вас, mladen, Xard777, igor и др.
На следующей странице форума по ссылке находится непослушная библиотека: TimeFrameLib-v0.3.ex4
Я предполагаю, что она из той же команды, что и файлы MM. Вы можете что-нибудь сделать, mladen?
Здравствуйте, я пытаюсь узнать больше о программировании MQL4, в основном это редактирование существующих индикаторов, т.е. добавление предупреждений, дополнительных сигналов.
сигналы, изменение цвета и формы.
Я уверен, что следующий вопрос должен быть простым для большинства из вас, но я пытаюсь это сделать уже полдня, и я уверяю вас, что я пытался
найти решение самостоятельно...
---
Как "повторно инициализировать" индикатор типа линии Murrey Math?
---
и еще один большой вопрос
---
Когда индикатор должен быть "повторно инициализирован" после нескольких периодов (16, 32, 64, 96)?
а что если график полностью выходит за пределы диапазона Мюррея (в пределах периода времени)?
Как с этим быть?
---
Вот некоторые идеи, которые я пробовал и которые не сработали.
Обзорная версия (полный индикатор прилагается)
-----------------------------
extern int FirstBar = 0;
extern int periodtotake = 16;
extern int SomeVar = 0;
int bn_v1 = 0,
bn_v2 = 0,
shift = 0,
i2 = 0, //что это???
WorkTime = 0, // <---
CurPeriods = 0; // <---
//NewPeriod = 0; //игнорируем бесполезные попытки
int init()
{
//WorkTime = Time[0]; //wrongPosition
//CurPeriods = Period(); //wrongPosition
//NewPeriod = periodtotake; //игнорировать бесполезную попытку
//----
return(0);
}
//+------------------------------------------------------------------+
//| Функция деинициализации индикатора Custor |
//+------------------------------------------------------------------+
int deinit()
{
//---- TODO: добавьте свой код сюда
ObjectsDeleteAll(0, OBJ_HLINE);
ObjectsDeleteAll(0, OBJ_VLINE); //VLINE добавлена
ObjectDelete(VLine_0);
ObjectDelete(VLine_1);
ObjectDelete(VLine_2);
int count=ArraySize(textArray);
for(int ch=0;ch<count;ch++) {
ObjectDelete(textArray[ch]);
ObjectDelete(lineArray[ch]);
}
//ObjectsDeleteAll(0, OBJ_TEXT);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция итерации индикатора |
//+------------------------------------------------------------------+
int start()
{
if( (WorkTime != Time[0]) || (CurPeriods != Period()) ) // <---!!!
{
//цена
bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar );
bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar );
v1 = Low;
v2 = High;
//+------------------------------------------------------------------+
// Все вычисления
//+------------------------------------------------------------------+
// КОНЕЦ - здесь я все делаю неправильно
WorkTime = Time[0];
CurPeriods = Period();
}
//if( Time[periodtotake] >= periodtotake )
//if( CurPeriods>= periodtotake )
//{
// WindowRedraw();
//}
//else
//{
// // WindowRedraw();
//}
//----
return(0);
}
Если у вас есть время, напишите несколько слов объяснений (почему это работает, а это нет, или какие ключевые слова в какой части ссылки мне лучше посмотреть).
мне лучше присмотреться к этому),
О, если бы я только хотел иметь работающий освежающий Murrey, я бы использовал Murrey_Math_Line_X, но это также для обучения...
Полный (в процессе работы) индикатор прилагается.
Большое спасибо, что уделили мне время, я постараюсь "дать что-либо взамен", как только мои знания будут достойны того, чтобы ими поделиться ;-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4
Здравствуйте, я пытаюсь узнать больше о программировании MQL4, в основном это редактирование существующих индикаторов, т.е. добавление алертов, дополнительных...
сигналы, меняя цвет и форму.
Я уверен, что следующий вопрос должен быть простым для большинства из вас, но я пробую его уже полдня, и уверяю вас, я пытался
найти решение самостоятельно...
---
Как "повторно инициализировать" индикатор типа линии Murrey Math?
---
и еще один большой вопрос
---
Когда индикатор должен быть "повторно инициализирован" после нескольких периодов (16, 32, 64, 96)?
а что если график полностью выходит за пределы диапазона Мюррея (в пределах временного периода)?
Как с этим быть?
---
Вот некоторые идеи, которые я пробовал и которые не сработали.
Обзорная версия (полный индикатор прилагается)
-----------------------------
extern int FirstBar = 0;
extern int periodtotake = 16;
extern int SomeVar = 0;
int bn_v1 = 0,
bn_v2 = 0,
shift = 0,
i2 = 0, //что это???
WorkTime = 0, // <---
CurPeriods = 0; // <---
//NewPeriod = 0; //игнорируем бесполезные попытки
int init()
{
//WorkTime = Time[0]; //wrongPosition
//CurPeriods = Period(); //wrongPosition
//NewPeriod = periodtotake; //игнорировать бесполезную попытку
//----
return(0);
}
//+------------------------------------------------------------------+
//| Функция деинициализации индикатора Custor |
//+------------------------------------------------------------------+
int deinit()
{
//---- TODO: добавьте свой код сюда
ObjectsDeleteAll(0, OBJ_HLINE);
ObjectsDeleteAll(0, OBJ_VLINE); //VLINE добавлена
ObjectDelete(VLine_0);
ObjectDelete(VLine_1);
ObjectDelete(VLine_2);
int count=ArraySize(textArray);
for(int ch=0;ch<count;ch++) {
ObjectDelete(textArray[ch]);
ObjectDelete(lineArray[ch]);
}
//ObjectsDeleteAll(0, OBJ_TEXT);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция итерации индикатора |
//+------------------------------------------------------------------+
int start()
{
if( (WorkTime != Time[0]) || (CurPeriods != Period()) ) // <---!!!
{
//цена
bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar );
bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar );
v1 = Low;
v2 = High;
//+------------------------------------------------------------------+
// Все вычисления
//+------------------------------------------------------------------+
// КОНЕЦ - здесь я все делаю неправильно
WorkTime = Time[0];
CurPeriods = Period();
}
//if( Time[periodtotake] >= periodtotake )
//if( CurPeriods>= periodtotake )
//{
// WindowRedraw();
//}
//else
//{
// // WindowRedraw();
//}
//----
return(0);
}
Если у вас есть время, напишите несколько слов объяснений (почему это работает, а это нет, или какие ключевые слова в какой части ссылки мне лучше посмотреть).
мне лучше присмотреться к этому),
О, если бы я только хотел иметь работающий освежающий Murrey, я бы использовал Murrey_Math_Line_X, но это также для обучения...
Полный (в процессе работы) индикатор прилагается.
спасибо большое, что уделили мне время, я постараюсь "отдать что-л. взамен", как только мои знания станут достойны того, чтобы ими поделиться ;-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4Вы не можете повторно инициализировать любой код mql, если вы не меняете параметры, символ или таймфрейм.
Здравствуйте, я пытаюсь узнать больше о программировании MQL4, в основном это редактирование существующих индикаторов, т.е. добавление алертов, дополнительных
сигналы, меняя цвет и форму.
Я уверен, что следующий вопрос должен быть простым для большинства из вас, но я пробую его уже полдня, и уверяю вас, я пытался
найти решение самостоятельно...
---
Как "повторно инициализировать" индикатор типа линии Murrey Math?
---
и еще один большой вопрос
---
Когда индикатор должен быть "повторно инициализирован" после нескольких периодов (16, 32, 64, 96)?
а что если график полностью выходит за пределы диапазона Мюррея (в пределах временного периода)?
Как с этим быть?
---
Вот некоторые идеи, которые я пробовал и которые не сработали.
Обзорная версия (полный индикатор прилагается)
-----------------------------
extern int FirstBar = 0;
extern int periodtotake = 16;
extern int SomeVar = 0;
int bn_v1 = 0,
bn_v2 = 0,
shift = 0,
i2 = 0, //что это???
WorkTime = 0, // <---
CurPeriods = 0; // <---
//NewPeriod = 0; //игнорируем бесполезные попытки
int init()
{
//WorkTime = Time[0]; //wrongPosition
//CurPeriods = Period(); //wrongPosition
//NewPeriod = periodtotake; //игнорировать бесполезную попытку
//----
return(0);
}
//+------------------------------------------------------------------+
//| Функция деинициализации индикатора Custor |
//+------------------------------------------------------------------+
int deinit()
{
//---- TODO: добавьте свой код сюда
ObjectsDeleteAll(0, OBJ_HLINE);
ObjectsDeleteAll(0, OBJ_VLINE); //VLINE добавлена
ObjectDelete(VLine_0);
ObjectDelete(VLine_1);
ObjectDelete(VLine_2);
int count=ArraySize(textArray);
for(int ch=0;ch<count;ch++) {
ObjectDelete(textArray[ch]);
ObjectDelete(lineArray[ch]);
}
//ObjectsDeleteAll(0, OBJ_TEXT);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция итерации индикатора |
//+------------------------------------------------------------------+
int start()
{
if( (WorkTime != Time[0]) || (CurPeriods != Period()) ) // <---!!!
{
//цена
bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar );
bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar );
v1 = Low;
v2 = High;
//+------------------------------------------------------------------+
// Все вычисления
//+------------------------------------------------------------------+
// КОНЕЦ - здесь я все делаю неправильно
WorkTime = Time[0];
CurPeriods = Period();
}
//if( Time[periodtotake] >= periodtotake )
//if( CurPeriods>= periodtotake )
//{
// WindowRedraw();
//}
//else
//{
// // WindowRedraw();
//}
//----
return(0);
}
Если у вас есть время, напишите несколько слов объяснений (почему это работает, а это нет, или какие ключевые слова в какой части ссылки мне лучше посмотреть).
мне лучше присмотреться к этому),
О, если бы я только хотел иметь работающий освежающий Murrey, я бы использовал Murrey_Math_Line_X, но это также для обучения...
Полный (в процессе работы) индикатор прилагается.
спасибо большое за то, что уделили мне время, я постараюсь "отдать что-л. обратно", как только мои знания будут достойны того, чтобы ими поделиться ;-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4Морро прав: повторная инициализация - не вариант.
Но также не нужна WindowRedraw() прямо перед выходом из процедуры запуска - она будет перерисована независимо от функции. WindowRedraw() нужна только если обработка занимает много времени или вы держите что-то в мертвом цикле.
Индикатор M-MATH v3 m-math_v3.rar
Есть ли у вас этот индикатор, который работает с новым билдом? Не могу загрузить его на свой график?
Для новой сборки: m-math_v3.mq4
спасибо, отличная система
Уровни отскока Мюррея
emurreyreboundlevels.ex4