Поиск форекс индикаторов vol.3

aston7

Новичок форума
Доброго дня, Просьба помочь декомпилировать индикатор из ex4 в mql4.
 

Вложения

  • BBands_Fill_V2.ex4
    13 КБ · Просмотры: 101

Karabas BARABAS

Директор Буратины
Для кроссов цена одного пункта зависит от текущей котировки составных к баксу. К примеру стоимость пункта EURJPY считается через курсы EURUSD и USDJPY а они на каждом тике меняются неравномерно. Так-что с каждым тиком размер будет меняться. А так, можно просто разделить 3000 на MarketInfo("EURJPY", MODE_TICKVALUE) или на SymbolInfoDouble("EURJPY", SYMBOL_TRADE_TICK_VALUE)

я знаю про кроссы, но меня интересуют только мажоры...
торгую только 7 инструментом
EUPUSD GBPUSD AUDUSD NZDUSD USDCHF USDCAD USDJPY

и на счет что на что нужно делить тоже знаю, А вот как это воплотить в коде и налее в окне терминала - не знаю...

Не стремись знать все, чтобы не стать во всем невеждой.
Демокрит
 

trewq44

Активный участник
Все уже нашла. Спасибо огромное)))

Поделитесь пожалуйста исходником у кого есть abc___RG___VV_zhig.ex4
 

AlexeyVik

Программист mql4 mql5
я знаю про кроссы, но меня интересуют только мажоры...
торгую только 7 инструментом
EUPUSD GBPUSD AUDUSD NZDUSD USDCHF USDCAD USDJPY

и на счет что на что нужно делить тоже знаю, А вот как это воплотить в коде и налее в окне терминала - не знаю...

Не стремись знать все, чтобы не стать во всем невеждой.
Демокрит
Держи.
 

Вложения

  • BARABAS.mq4
    5,3 КБ · Просмотры: 146

Kasander

Местный знаток

Вложения

  • BANDS+CG BearsBulls TT.ex4
    18,7 КБ · Просмотры: 67
  • BANDS+CG BearsBulls Moment TT.ex4
    21,9 КБ · Просмотры: 70
  • BANDS+CG BearsBulls TT_2019-01-23.png
    BANDS+CG BearsBulls TT_2019-01-23.png
    47,1 КБ · Просмотры: 653

Karabas BARABAS

Директор Буратины

спасибо, но мне кажется что, что-то не то....
вот как это выглядит
твою черточку почти не видно, а должно быть как обведено желтым...
а твою черточку почти не видно и она не соответствует количеству пипсов

2300 / 1.13924 = 2019 пипок для 5-ти знака...
а твоя не более 10 пипок...
 

Вложения

  • 3333333.png
    3333333.png
    42,2 КБ · Просмотры: 334

Karabas BARABAS

Директор Буратины
довел до ума....
правда получилось 2 индюка, один для xxxUSD, другой для USDxxx



Если хочешь сделать что-то хорошо, сделай это сам.
Фердинанд Порше
 

Вложения

  • BARABAS _$vsXXX.mq4
    5,5 КБ · Просмотры: 130
  • BARABAS_XXXvs$.mq4
    5,4 КБ · Просмотры: 142

AlexeyVik

Программист mql4 mql5
спасибо, но мне кажется что, что-то не то....
вот как это выглядит
твою черточку почти не видно, а должно быть как обведено желтым...
а твою черточку почти не видно и она не соответствует количеству пипсов

2300 / 1.13924 = 2019 пипок для 5-ти знака...
а твоя не более 10 пипок...
Ну не знаю почему у тебя так получилось. Но ты делаешь не правильный расчёт или надо тебе не то что просил. Вот так выглядит на моём графике.
А отодвинуть вправо можно изменив двойку в этих строках
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_TIME, 0, timeTrend+PeriodSeconds()*2);
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_TIME, 1, timeTrend+PeriodSeconds()*2);
на нужное количество баров
А для увеличения толщины можешь добавить такую строку
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_WIDTH, 2);
 

Вложения

  • 000.png
    000.png
    23,6 КБ · Просмотры: 287
  • 001.png
    001.png
    24,2 КБ · Просмотры: 136
Последнее редактирование:

Karabas BARABAS

Директор Буратины
Ну не знаю почему у тебя так получилось. Но ты делаешь не правильный расчёт или надо тебе не то что просил. Вот так выглядит на моём графике.
А отодвинуть вправо можно изменив двойку в этих строках
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_TIME, 0, timeTrend+PeriodSeconds()*2);
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_TIME, 1, timeTrend+PeriodSeconds()*2);
на нужное количество баров
А для увеличения толщины можешь добавить такую строку
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_WIDTH, 2);

почему не получилось, я не знаю....
но твой вариант не дал нужный результат...
после того как я поменял в твоем коде "тики" на "бид" все стало как надо...
... ну ты видел что я изменил....

ну а раз пошла такая пьянка,... то для полного счастья мне нужно заменить линию на фибу,.. но с моими уровнями...
как поменять на фибу я знаю, но там не те уровни, какие мне нужны
мне нужны 0, 0.25, 0.5, 0.75, 1, 2, -1
можешь в моей интерпретации твоего кода сделать это?
 

Вложения

  • 4444444.png
    4444444.png
    36,9 КБ · Просмотры: 232

AlexeyVik

Программист mql4 mql5
почему не получилось, я не знаю....
но твой вариант не дал нужный результат...
после того как я поменял в твоем коде "тики" на "бид" все стало как надо...
... ну ты видел что я изменил....

ну а раз пошла такая пьянка,... то для полного счастья мне нужно заменить линию на фибу,.. но с моими уровнями...
как поменять на фибу я знаю, но там не те уровни, какие мне нужны
мне нужны 0, 0.25, 0.5, 0.75, 1, 2, -1
можешь в моей интерпретации твоего кода сделать это?
Вот пример как изменить количество уровней и назначить им значения и описание
ObjectSetInteger(chartID, "fibo", OBJPROP_LEVELS, 3);
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 0, 0.0);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "0.0");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 1, -0.1);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 1, "-1.0");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 2, 0.245);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 2, "24.50");
А если хочешь чтобы уровни обозначались ценами то вместо чисел надо написать "%$"

ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "%$");
Или объединить с цифрами
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "0.0 %$");
 

Karabas BARABAS

Директор Буратины
Вот пример как изменить количество уровней и назначить им значения и описание
ObjectSetInteger(chartID, "fibo", OBJPROP_LEVELS, 3);
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 0, 0.0);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "0.0");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 1, -0.1);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 1, "-1.0");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 2, 0.245);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 2, "24.50");
А если хочешь чтобы уровни обозначались ценами то вместо чисел надо написать "%$"

ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "%$");
Или объединить с цифрами
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "0.0 %$");


вставил в код строки, как ты сказал
вот весь код....

double middle = (ChartGetDouble(chartID, CHART_PRICE_MAX)+ChartGetDouble(chartID, CHART_PRICE_MIN))/2;
double pips = bax/SymbolInfoDouble(Symbol(), SYMBOL_BID);
datetime timeTrend = iTime(_Symbol, PERIOD_CURRENT, 0);
if(ObjectFind(chartID, _Symbol+"pip") < 0)
ObjectCreate(chartID, _Symbol+"pip", OBJ_FIBO, 0, 0, 0.0, 0, 0.0);
ObjectSetInteger(chartID, _Symbol+"pip",OBJPROP_COLOR, Gold);
ObjectSetInteger(chartID, _Symbol+"pip",OBJPROP_LEVELCOLOR, Black);
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_RAY_RIGHT, false);
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_TIME, 0, timeTrend+PeriodSeconds()*340);
ObjectSetInteger(chartID, _Symbol+"pip", OBJPROP_TIME, 1, timeTrend+PeriodSeconds()*340);
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_PRICE, 0, NormalizeDouble(middle+(pips/2)*_Point, _Digits));
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_PRICE, 1, NormalizeDouble(middle-(pips/2)*_Point, _Digits));

ObjectSetInteger(chartID, "fibo", OBJPROP_LEVELS, 7);
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 0, 0.0);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 0, "1");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 1, 0.25);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 1, "4");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 2, 0.5);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 2, "2");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 3, 0.75);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 3, "4");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 4, 1);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 4, "1");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 5, 2);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 5, "1");
ObjectSetDouble(chartID, "fibo", OBJPROP_LEVELVALUE, 6, -1);
ObjectSetString(chartID, "fibo", OBJPROP_LEVELTEXT, 6, "1");


но на графике фиба с её родными уровнями....
может, что не так сделал?
 

Вложения

  • 22222222222.png
    22222222222.png
    52,2 КБ · Просмотры: 131

Karabas BARABAS

Директор Буратины
надо было вот что вставлять

ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 3, 0.75);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 3, "4");
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 4, 1);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 4, "1");
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 5, 2);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 5, "1");
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 6, -1);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 6, "1");


теперь все четко...
 

Вложения

  • 22222222222.png
    22222222222.png
    44,3 КБ · Просмотры: 114

pit84

Активный участник
Помогите найти!!!

Приветствую всех!
Ребятушки, есть у кого нибудь индикатор или советник построения Range баров(работающий)? Поделитесь ПОФЛУЙСТА!!!
 

AlexeyVik

Программист mql4 mql5
надо было вот что вставлять

ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 3, 0.75);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 3, "4");
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 4, 1);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 4, "1");
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 5, 2);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 5, "1");
ObjectSetDouble(chartID, _Symbol+"pip", OBJPROP_LEVELVALUE, 6, -1);
ObjectSetString(chartID, _Symbol+"pip", OBJPROP_LEVELTEXT, 6, "1");


теперь все четко...
Я рад что сам сумел разобраться. Извини за мою невнимательность. Я ведь действительно изменил имя объекта при написании примера и не обратил на это внимания. Ещё убери из кода ChartRedraw(); он только тормозит. Это тоже было вставлено для отладки, проверки работоспособности кода.
 

Kostya3257

Активный участник
Я рад что сам сумел разобраться. Извини за мою невнимательность. Я ведь действительно изменил имя объекта при написании примера и не обратил на это внимания. Ещё убери из кода ChartRedraw(); он только тормозит. Это тоже было вставлено для отладки, проверки работоспособности кода.

Ветку не попутали? Умники блин... оО
 
Верх