Заработай до
50000$
на приглашении друзей
получить StartUp Bonus
от ИнстаФорекс
Вложений не требуется!
Начни торговлю
без вложений и риска
С новым STARTUP бонусом 1000$
Получи бонус
55%
от ИнстаФорекс
на каждое пополнение
Ответить в теме
Страница 5 из 471
Первая ... 4 5 6 15 ... Последняя ◄╝

Показаны сообщения: с 81 по 100 из 9409

Тема: MQL4: Бесплатное написание программ

 Перейти в классический вид темы
     
  1. ТОП сообщений
    2014-02-12   23:56
    Лучший ответ #1
    Накопленные выплаты 100426 RUB

    Продолжение темы - Бесплатное написание программ на MQL4
    В этой ветке рассматриваются заявки на бесплатное исполнение торговых роботов, скриптов и индикаторов. Реализация ваших идей возможна на основе следующих простых правил:
    1) Все описания, коды, изображения и т.п. должны открыто размещаться в данной ветке.
    2) Создание программ, за редчайшим исключением, осуществляется на основе идей, а не чужих кодов. Т.е. копаться в чужом коде в рамках этой ветки мы вряд ли станем.
    3) Программисты имеют право отказать в исполнении той или иной идей без объяснения причин. Как правило это связано с бессмысленностью идеи, которая становится очевидной ещё на стадии чтения задания;
    4) Все программы исполняются без всякой очереди, по желанию программиста.
    5) Задание должно быть максимально точным и минимально абстрактным. В идеале в задании должны быть описаны конкретные правила "если X, то Y". Поясняющие изображения (в т.ч. и скриншоты) будут дополнительным плюсом -- как правило они способствуют лучшему пониманию задания.
    6) Сразу продумывайте все детали при составлении ТЗ. Последующее уточнение деталей в процессе написания советника занимает очень много времени программиста.
    Убедительная просьба относиться уважительно к программистам, администрации форума и друг к другу.

    2018-06-11   09:25
    Лучший ответ #2
    Накопленные выплаты 27108 RUB

    Цитата Сообщение от traderledi Посмотреть сообщение
    Здравствуйте! Отвечаю ещё раз на пост для меня. Извините что снова Вас потревожила со своими просьбами. Очень прошу Вас. Сделайте, пожалуйста, так чтобы советник (со всем уважением к вам, который вы написали для меня) при достижении общего профита закрывал все позиции и выключался. А taketprofit (тейк профит) каждого торгового ордера можно убрать (если хотите) так как он не нужен в данной торговле. Это связано с тем что рынок иногда (это бывает редко, он просто сливает счет) не дает получить хорошую прибыль, а прибыль меньше 100% он позволяет нам получить, вот именно поэтому я вас и прошу об этом. Советник в этом посту на который я ответила.
    вмешаюсь в Вашу беседу ибо мимо проходил
    вот добавил

    Вложение
    Превью
    2018-03-24   20:05
    Лучший ответ #3
    Накопленные выплаты 46509 RUB

    Цитата Сообщение от a4techctrl Посмотреть сообщение
    Спасибо за внимание и отзывчивость. Я ошибку и не заметила так как использую его пока только в одном направлении (Sell). Я подумаю как можно его использовать в обе стороны. А вот трал мне не нужен в советнике. Единственное что я бы хотела от этого советника так это то чтобы советник после пятого ордера открывал следующий с первоначальным лотом (то есть лотом первого ордера). Вроде как получается сетка из пяти ордеров а затем вторая сетка из пяти точно таких же ордеров далее третья сетка и так далее. И каждая сетка из пяти ордеров должна закрываться по своему (общему для этой сетки) тейк профиту (то есть у каждой сетки свой общий для этой сетки тейк профит) и значение тейк профита у всех сеток одно и тоже (то есть общий тейк профит каждой сетки равен одной и той же сумме). Вот если сможете так сделать то получится то о чем я мечтаю. Очень хочется чтобы у вас такое получилось, просто жду с нетерпением.
    Цитата Сообщение от a4techctrl Посмотреть сообщение
    Хочу чтобы такая возможность появилась у вас как можно раньше, а то я просто уже мечтаю по поводу торговли по этому советнику. Простите за нетерпение. Я от доброй души.
    Примерно вот так ваши мечты превращаются в реалии. Есть один нюанс, который учитывайте. Убрал мейджик из настроек, советник ставит свои мейджики каждой серии начиная с нулевого. Следующая серия имеет мейджик на 1 больше предыдущей. Поставил ограничение в 20 серий, думаю, что хватит такого кол-ва... Удачи и профитов.
    З.Ы. Еще один нюанс... Если последняя серия имеет меньше ордеров, чем предыдущая, то последней необходимо пройти намного большее расстояния до закрытия, чем предыдущей, у которой суммарная лотность больше. По сему сделал так... Если по условию закрывается предыдущая серия, то автоматом закрывается и последняя серия(в любом случае, она в плюсе).

    Вложение
    Превью
    2018-03-28   21:39
    Лучший ответ #4
    Накопленные выплаты 22364 RUB

    Цитата Сообщение от Leschich Посмотреть сообщение
    Примерно вот так ваши мечты превращаются в реалии. Есть один нюанс, который учитывайте. Убрал мейджик из настроек, советник ставит свои мейджики каждой серии начиная с нулевого. Следующая серия имеет мейджик на 1 больше предыдущей. Поставил ограничение в 20 серий, думаю, что хватит такого кол-ва... Удачи и профитов.
    З.Ы. Еще один нюанс... Если последняя серия имеет меньше ордеров, чем предыдущая, то последней необходимо пройти намного большее расстояния до закрытия, чем предыдущей, у которой суммарная лотность больше. По сему сделал так... Если по условию закрывается предыдущая серия, то автоматом закрывается и последняя серия(в любом случае, она в плюсе).
    Хочу ещё раз поблагодарить вас за помощь в написании программы для советника. Я его протестировала на маленьких расстояниях движения цены и я счастлива. Советник работает просто замечательно и именно таким образом о чем я мечтала. Программа составлена очень грамотно и просто идеально для меня. Я сама так не смогла бы. Чувствуется Ваш профессионализм и огромный опыт работы с программированием роботов. Уже вскоре постараюсь установить Ваше создание на реальный счет. С валютной парой и расчетами по лотам и расстояниям я уже определилась и все просчитала. Теперь только время определит реальное совершенство созданное Вами. Огромное Вам спасибо. С уважением.

    2019-08-02   10:32
    Лучший ответ #5

    Цитата Сообщение от Leschich Посмотреть сообщение
    Кстати, данное слова "падение", встречается очень часто, кто заказывает советники, по схожей системе. Вопрос! Откуда вы берете эти идеи??
    Я прежде, чем начать торговлю, стараюсь спрогнозировать дальнейшее движение цены. И то что иногда цена идет в другом направлении это нормально для нашего рынка. Я посмотрел советник. Советник и вправду очень хороший. Спасибо что помогли, я такого советника нигде не мог найти, а написать самому у меня просто ума не хватает, как и знаний. А мне именно такой нужен. Хочу вас попросить ещё добавить в советник торговлю по мартингейлу, это нужно для того, чтобы затраченное время на торговую деятельность с помощью советника оплачивалось, в случае когда движение ценового графика было не в планируемом и прогнозируемом мною направлении, поэтому мне необходимо увеличить лот следующего открытого ордера, то есть когда торговый ордер закрывается с профитом меньше нуля (то есть в минусе), то следующий ордер открывается с увеличенным лотом. Я знаю, что вы не любите торговлю с использованием стратегии Мартингейла и считаете такую торговлю торговлей с необоснованным риском, но, пожалуйста, сделайте исключение, добавьте мне торговлю по мартингейлу.Вложение 2908983Вложение 2908984

    Вложение
    Превью
    2020-05-13   02:40
    Лучший ответ #6
    Накопленные выплаты 46509 RUB

    Цитата Сообщение от %40Antago%40 Посмотреть сообщение
    Мне нужно чтобы советник открывал торговый ордер на падение (на Sell) с тейк профитом и стоп лоссом с начала следующего часа (или в начале следующей свечи). Далее когда торговый ордер закроется по стоп лоссу или тейк профиту, нужно чтобы советник открывал следующий торговый ордер также с начала с следующего часа (или в начале следующей свечи), но уже с увеличенным лотом на 0,01 если предыдущий торговый ордер был закрыт по стоп лоссу, а если предыдущий торговый ордер был закрыт по тейк профиту, то с первоначальным лотом. И так до бесконечности. Первоначальный лот 0.01, стоп лосс 20, тейк профит 15. Мне очень нужен такой советник для себя, нигде не могу найти и сам не могу такого составить. Очень на вас надеюсь. На советник возлагаю надежды в прибыльной торговле. Потом вам дам знать что у меня получилось в торговле по этому советнику и на сколько он получился прибыльным.
    Выкладываю советник в соответствующей теме. Примерно так получилось.. Пробуйте, тестируйте.. Добавил ещё параметр TF, какой выберите таймфрейм,- по тому и будет работать, вне зависимости от того, где загружен советник. Удачи и профитов.

    Вложение
    Превью
  2. линк#1
    V.I.P.
    Сама доброта
     
    villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации villi311 наивысший уровень репутации Аватар для villi311
    Регистрация:
    11.12.2010
    Пол:
    Мужчина
    Сообщений:
    16,242
    Поставил(а) лайков:
    8,108
    Получено лайков:   7,906
    в 3,790 сообщениях
    49%
    ПодписатьсяПодписаться
    Подписано: 0
    Продолжение темы - Бесплатное написание программ на MQL4


    В этой ветке рассматриваются заявки на бесплатное исполнение торговых роботов, скриптов и индикаторов. Реализация ваших идей возможна на основе следующих простых правил:
    1) Все описания, коды, изображения и т.п. должны открыто размещаться в данной ветке.
    2) Создание программ, за редчайшим исключением, осуществляется на основе идей, а не чужих кодов. Т.е. копаться в чужом коде в рамках этой ветки мы вряд ли станем.
    3) Программисты имеют право отказать в исполнении той или иной идей без объяснения причин. Как правило это связано с бессмысленностью идеи, которая становится очевидной ещё на стадии чтения задания;
    4) Все программы исполняются без всякой очереди, по желанию программиста.
    5) Задание должно быть максимально точным и минимально абстрактным. В идеале в задании должны быть описаны конкретные правила "если X, то Y". Поясняющие изображения (в т.ч. и скриншоты) будут дополнительным плюсом -- как правило они способствуют лучшему пониманию задания.
    6) Сразу продумывайте все детали при составлении ТЗ. Последующее уточнение деталей в процессе написания советника занимает очень много времени программиста.

    Убедительная просьба относиться уважительно к программистам, администрации форума и друг к другу.


  3. линк#81
    Кандидат форумных наук
    cgon хорошая репутация cgon хорошая репутация cgon хорошая репутация cgon хорошая репутация cgon хорошая репутация cgon хорошая репутация Аватар для cgon
    Регистрация:
    17.06.2013
    Пол:
    Мужчина
    Сообщений:
    1,454
    Накопленные выплаты (Подробнее):
    15893 RUB
    Поставил(а) лайков:
    34
    Получено лайков:   424
    в 392 сообщениях
    29%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от want a million Посмотреть сообщение
    И что то тишина на мою просьбу... ни кому грааль не надь))) досадно... или может просто прогеры пока не заглядывали?)))
    Советник выложи! А без него не видно, с чем имеем дело. Поэтому и молчок.


  4. post_thanks Получено лайков: 1

    Cybra (10.12.2014)

  5. линк#82
    Свой человек
    matuzok приемлемый уровень репутации Аватар для matuzok
    Регистрация:
    03.08.2012
    Пол:
    Мужчина
    Сообщений:
    271
    Накопленные выплаты (Подробнее):
    1445 RUB
    Поставил(а) лайков:
    14
    Получено лайков:   64
    в 58 сообщениях
    24%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от cgon Посмотреть сообщение
    Советник выложи! А без него не видно, с чем имеем дело. Поэтому и молчок.

    Дык сделал его уже, мартышка там на машках.


  6. post_thanks Получено лайков: 2

    want a million (11.12.2014), Незарегистрированный (1 пользователь)

  7. линк#83
    В начале пути
    want a million стараюсь положительно себя зарекомендовать Аватар для want a million
    Регистрация:
    06.12.2014
    Пол:
    Мужчина
    Сообщений:
    11
    Накопленные выплаты (Подробнее):
    118 RUB
    Поставил(а) лайков:
    4
    Получено лайков:   3
    в 2 сообщениях
    27%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от cgon Посмотреть сообщение
    Советник выложи! А без него не видно, с чем имеем дело. Поэтому и молчок.
    да,действительно,Matuzok его уже ковырял. там и правда мартыха на машках. она косячная. просьба по этой сове такова,убрать тралл,добавить функцию закрытия по обратному сигналу(отключаемую,либо ТП,либо обратный сигнал),проверить корекность считывания сигналов,т.к. бывает,что сигнал изменился,а ордер не выставился/закрылся,и сделать считывание сигнала с первого бара(сейчас вроде со второго),и самое главное изменить мартин,что бы он умножал не по отдельности бай и селл,а как обычная мартышка,ордер в минусе-следующий умноженый,ордер в плюсе-следующий начальным лотом. вот. сову прикрепил.
    paperclip Вложения


  8. post_thanks Получено лайков: 2

    Cybra (10.12.2014), Незарегистрированный (1 пользователь)

  9. линк#84
    В начале пути
    DmitryiS стараюсь положительно себя зарекомендовать Аватар для DmitryiS
    Регистрация:
    06.11.2014
    Пол:
    Мужчина
    Сообщений:
    21
    Накопленные выплаты (Подробнее):
    167 RUB
    Поставил(а) лайков:
    5
    Поблагодарили 1 раз в
    1 сообщении
    5%
    ПодписатьсяПодписаться
    Подписано: 0
    Господа программисты, может все таки кто откликнится на мою просьбу. А то подправить советник своего мозга не хватает.
    Подмогните а?


  10. post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  11. линк#85
    В начале пути
    Dimock стараюсь положительно себя зарекомендовать Аватар для Dimock
    Регистрация:
    11.11.2010
    Сообщений:
    39
    Накопленные выплаты (Подробнее):
    201 RUB
    Поставил(а) лайков:
    6
    Получено лайков:   4
    в 4 сообщениях
    10%
    ПодписатьсяПодписаться
    Подписано: 0
    Есть ли такой скрипт или опция в МТ4, который(ая) требует подтверждения сделки, когда в МТ4 правой кнопкой мыши открываешь контекстное меню и случайно нажимаешь на самую верхнюю строку "Sell limit/Buy limit + цена" (опция торговли в один клик) вместо другой кнопки? Такое уже было и не раз, но благо, что тогда на счете не было денег :-)
    Спасибо.

    Последний раз редактировалось Dimock; 10.12.2014 в 16:06.

  12. линк#86
    V.I.P.
    Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Аватар для Cybra
    Регистрация:
    11.05.2014
    Сообщений:
    14,772
    Накопленные выплаты (Подробнее):
    200433 RUB
    Поставил(а) лайков:
    4,034
    Получено лайков:   4,269
    в 3,587 сообщениях
    29%
    ПодписатьсяПодписаться
    Подписано: 0
    Друзья. приветствую, уважаемые.

    : )

    если есть желание и возможность подправить мою лошадку немножко ) ато не скачит без последней ноги : ))

    хотелось бы доработать систему увеличения лота: сделать мартингейл.

    селл по первому сигналу + тот же сел по тому же сигналу открывает 0.01 + 0.01 п, хотелось бы что бы открывал селл повторно уже с увеличенным лотом и если это возможно - что бы лот увеличивался экспанентально: 0.01 0.02 0.04 0.08 0.12 0.24 0.48 если это возможно : ) тоесть если по одному и тому же сигналу происходит 5 открытий ордеров то пятый равняется 0.12 обьему .. буду безмерно благодарен. : )

    MQL код:
    //+------------------------------------------------------------------+
    //| Percheron.mq4 |
    //| Copyright 2014, Meoda ---- Corp |
    //| extern double OP_BUY_Level = 30.7; [url]http://www.00000.00[/url] |
    //+------------------------------------------------------------------+
    #property copyright "Copyright 2014, Meoda AAARF Corp"
    #property link "http://www.aaarf.eu"
    #property version "1.00"
    #property strict
    //--------------------------------------------------------------------

    extern int RSI_period = 454; // период
    extern int RSI_price = 0; // тип цены
    extern int OP_SELL_Level_1 = 60; // уровень 1 входа сел
    extern int OP_SELL_Level_2 = 55; // уровень 2 входа сел
    extern int OP_SELL_Level_3 = 53; // уровень 3 входа сел
    extern int CLOSE_SELL_Level_1 = 52; // уровень выхода сел
    extern int CLOSE_SELL_Level_2 = 52; // уровень выхода сел
    extern int CLOSE_SELL_Level_3 = 52; // уровень выхода сел
    extern int CLOSE_BUY_Level_1 = 48; // уровень выхода бай
    extern int CLOSE_BUY_Level_2 = 48; // уровень выхода бай
    extern int CLOSE_BUY_Level_3 = 48; // уровень выхода бай
    extern int OP_BUY_Level_3 = 46; // уровень 3 входа бай
    extern int OP_BUY_Level_2 = 45; // уровень 2 входа бай
    extern int OP_BUY_Level_1 = 40; // уровень 1 входа бай
    extern double LOT = 0.1; // размер лота
    extern int stoploss = 0; // закрывает сам по стоплоссу
    extern int takeprofit = 0; // закрывает сам по тейкпрофиту
    extern int Slippage = 3; // проскальзывание
    extern bool CloseRevers = false; // закрывает сам по обратному сигналу, если установлен true
    extern bool CloseOrders = true; // закрытие ордеров и ожидание сигнала
    extern int MaxOrders = 12; // максимальное кол-во открыти¤ ордеров
    extern int Magic = 123; // Magic
    //--------------------------------------------------------------------
    bool OrderClos;
    static int TimeBar;
    //--------------------------------------------------------------------
    int start()
    {
    if (TimeBar==Time[0]) return(0);

    double RSI_1 = iRSI(NULL,0,RSI_period,RSI_price,1); //значение инд на 1 баре
    double RSI_2 = iRSI(NULL,0,RSI_period,RSI_price,2); //значение инд на 2 баре

    double SL,TP;
    if((RSI_2OP_BUY_Level_1)|| //условие на бай
    (RSI_2OP_BUY_Level_2)|| //условие на бай
    (RSI_2OP_BUY_Level_3)) //условие на бай
    { //больше уровн¤ 30, пересечение снизу вверх
    if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); else TP = 0;
    if (stoploss!=0) SL = NormalizeDouble(Bid - stoploss*Point,Digits); else SL = 0;
    if (CloseRevers) CLOSEORDER(OP_SELL);
    if (MaxOrders>OrdersTotal())
    if (OrderSend(Symbol(),OP_BUY, LOT,NormalizeDouble(Ask,Digits),Slippage,SL,TP,"EA _RSI",Magic, 0, DodgerBlue)!=-1)
    TimeBar=Time[0]; else Print("EA_RSI - OrderSend BUY Error ",GetLastError()," SL ",SL," TP ",TP);
    }
    if((RSI_2>OP_SELL_Level_1 && RSI_1 (RSI_2>OP_SELL_Level_2 && RSI_1 (RSI_2>OP_SELL_Level_3 && RSI_1 { //меньше уровн¤ 70, пересечение сверху вниз
    TimeBar=Time[0];
    if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); else TP = 0;
    if (stoploss!=0) SL = NormalizeDouble(Ask + stoploss*Point,Digits); else SL = 0;
    if (CloseRevers) CLOSEORDER(OP_BUY);
    if (MaxOrders>OrdersTotal())
    if (OrderSend(Symbol(),OP_SELL,LOT,NormalizeDouble(Bi d,Digits),Slippage,SL,TP,"EA_RSI",Magic, 0, Red)!=-1)
    TimeBar=Time[0]; else Print("EA_RSI - OrderSend SELL Error ",GetLastError()," SL ",SL," TP ",TP);
    }
    if((RSI_2CLOSE_BUY_Level_1)|| //условие закрыти¤ бай
    (RSI_2CLOSE_BUY_Level_2)|| //условие закрыти¤ бай
    (RSI_2CLOSE_BUY_Level_3)) //условие закрыти¤ бай
    if(CloseOrders) CLOSEORDER(OP_BUY);

    if((RSI_2>CLOSE_SELL_Level_1 && RSI_1 (RSI_2>CLOSE_SELL_Level_2 && RSI_1 (RSI_2>CLOSE_SELL_Level_3 && RSI_1 if(CloseOrders) CLOSEORDER(OP_SELL);
    return(0);
    }
    //--------------------------------------------------------------------
    void CLOSEORDER(int ord)
    {
    for (int i = OrdersTotal() - 1; i >= 0; i--)
    {
    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
    {
    if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
    {
    if (OrderType()==OP_BUY && ord==OP_BUY)
    OrderClos=OrderClose(OrderTicket(),OrderLots(),Nor malizeDouble(Bid,Digits),Slippage,Magenta);
    if (OrderType()==OP_SELL && ord==OP_SELL)
    OrderClos=OrderClose(OrderTicket(),OrderLots(),Nor malizeDouble(Ask,Digits),Slippage,Magenta);
    }
    }
    }
    }
    //--------------------------------------------------------------------

    С уважением.

  13. post_thanks Получено лайков: 1

    MT@MT (10.12.2014)

  14. линк#87
    Частый гость
    MT@MT стараюсь положительно себя зарекомендовать Аватар для MT@MT
    Регистрация:
    30.07.2014
    Пол:
    Мужчина
    Сообщений:
    201
    Накопленные выплаты (Подробнее):
    1693 RUB
    Поставил(а) лайков:
    231
    Получено лайков:   65
    в 48 сообщениях
    32%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от Meoda Посмотреть сообщение
    ... ато не скачит без последней ноги : ))

    MQL код:

    extern int RSI_period = 454; // период

    ... интересно, а как ваша "лошадка" вообще "скачет" с такими установками (RSI) ?
    RSI_period = 454; // период (???)


  15. линк#88
    V.I.P.
    Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Аватар для Cybra
    Регистрация:
    11.05.2014
    Сообщений:
    14,772
    Накопленные выплаты (Подробнее):
    200433 RUB
    Поставил(а) лайков:
    4,034
    Получено лайков:   4,269
    в 3,587 сообщениях
    29%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от MT@MT Посмотреть сообщение
    интересно, а как ваша "лошадка" вообще "скачет" с такими установками (RSI) ?
    RSI_period = 454; // период (???)

    : ))) это маневр дабы скрыть оригинальные кишки ) ибо и ma может такое выдавать - приснится не каждому ) главное сдвигами манипулировать )) по этому 454 это разумеется условность.. ) можно и ?? поставить, но математиков в формулах как правило устраивают адекватные переменные. логичные для самой формулы.

    Последний раз редактировалось Cybra; 10.12.2014 в 21:21.
    С уважением.

  16. линк#89
    Свой человек
    sergey19898 приемлемый уровень репутации sergey19898 приемлемый уровень репутации Аватар для sergey19898
    Регистрация:
    28.02.2014
    Пол:
    Мужчина
    Сообщений:
    435
    Накопленные выплаты (Подробнее):
    3032 RUB
    Поставил(а) лайков:
    67
    Получено лайков:   114
    в 93 сообщениях
    26%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от Meoda Посмотреть сообщение

    возвращаете объем лота последнего открытого ордера функцией:
    MQL код:

    double GetLotOpenPos(int tip)
    {
    datetime o;
    double l=0;
    int i, k=OrdersTotal();
    for (i=0; i {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    {
    if (OrderSymbol() == Symbol() && OrderMagicNumber() == magic && OrderType() == tip)
    {
    if (o {
    o=OrderOpenTime();
    l=OrderLots();
    }
    }
    }
    }
    return(l);
    }

    и в старте прописываете любые мохинации с лотом) например:
    MQL код:

    double LotsB;
    if(условие например, что открытых ордеров бай нет)
    {
    LotsB=LOT;
    }
    else
    {
    double lot=GetLotOpenPos(OP_BUY);
    LotsB=lot*2;
    }

    И соответственно при открытии ордера вместо LOT пишите LotsB, как-то так)


  17. post_thanks Получено лайков: 2

    Cybra (11.12.2014), want a million (11.12.2014)

  18. линк#90
    Свой человек
    sergey19898 приемлемый уровень репутации sergey19898 приемлемый уровень репутации Аватар для sergey19898
    Регистрация:
    28.02.2014
    Пол:
    Мужчина
    Сообщений:
    435
    Накопленные выплаты (Подробнее):
    3032 RUB
    Поставил(а) лайков:
    67
    Получено лайков:   114
    в 93 сообщениях
    26%
    ПодписатьсяПодписаться
    Подписано: 0
    Meoda, Забыл добавить) если вы хотите чтобы допустим 5 ордер был 0,12, а не 0,16, тогда можете там еще добавить условие, что если кол-во однонаправленных ордеров равно 4, то пятый откроется лотом не умноженным на 2, а например на 1,5... можете вывести собственную формулу, отталкивайтесь от код-ва ордеров, подсчет ордеров пишется так:
    MQL код:

    BUY=0;SELL=0;
    int One=0;
    for( One = OrdersTotal()-1; One>=0; One--)
    {
    if(OrderSelect(One, SELECT_BY_POS, MODE_TRADES))
    {
    if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic){
    if(OrderType() == OP_BUY){BUY++;}
    if(OrderType() == OP_SELL){SELL++;}}
    }
    }


  19. post_thanks Получено лайков: 3

    Cybra (11.12.2014), MT@MT (11.12.2014), want a million (11.12.2014)

  20. линк#91
    V.I.P.
    Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Аватар для Cybra
    Регистрация:
    11.05.2014
    Сообщений:
    14,772
    Накопленные выплаты (Подробнее):
    200433 RUB
    Поставил(а) лайков:
    4,034
    Получено лайков:   4,269
    в 3,587 сообщениях
    29%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от sergey19898 Посмотреть сообщение
    MQL код:
    BUY=0;SELL=0;
    int One=0;
    for( One = OrdersTotal()-1; One>=0; One--)
    {
    if(OrderSelect(One, SELECT_BY_POS, MODE_TRADES))
    {
    if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic){
    if(OrderType() == OP_BUY){BUY++;}
    if(OrderType() == OP_SELL){SELL++;}}
    }
    }




    sergey19898, вы не могли бы на примере моего кода показать куда втыкать всё это дело? )

    Последний раз редактировалось Gold; 11.12.2014 в 18:01.
    С уважением.

  21. линк#92
    Частый гость
    MT@MT стараюсь положительно себя зарекомендовать Аватар для MT@MT
    Регистрация:
    30.07.2014
    Пол:
    Мужчина
    Сообщений:
    201
    Накопленные выплаты (Подробнее):
    1693 RUB
    Поставил(а) лайков:
    231
    Получено лайков:   65
    в 48 сообщениях
    32%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от sergey19898 Посмотреть сообщение
    Meoda, Забыл добавить) если вы хотите чтобы допустим 5 ордер был 0,12, а не 0,16, тогда можете там еще добавить условие, что если кол-во однонаправленных ордеров равно 4, то пятый откроется лотом не умноженным на 2, а например на 1,5... можете вывести собственную формулу, отталкивайтесь от код-ва ордеров, подсчет ордеров пишется так:
    MQL код:



    BUY=0;SELL=0;
    int One=0;
    for( One = OrdersTotal()-1; One>=0; One--)
    {
    if(OrderSelect(One, SELECT_BY_POS, MODE_TRADES))
    {
    if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic){
    if(OrderType() == OP_BUY){BUY++;}
    if(OrderType() == OP_SELL){SELL++;}}
    }
    }
    оригинальное решение! спасибо.

    P.S. по применению "увеличения" лота могу покомментирвать, что не всегда оправдывает
    сразу увеличение лота (геом./арифм.) , так как описывалось выше,
    т.е. по возможным торг.ситуациям, как правило решающими являются первые три-четыре ордера (после открытия первого ордера), потом рынок определяется: или откат , или тренд-движение.
    Поэтому , чтобы не набирать "лишних больших лосей",
    лучше использовать логику увеличения лота с изменяющимся коэфициентом:
    т.е.
    первый ордер, коэф.=1
    второй ордер, коэф.=1
    третий ордер, коэф.=1
    четвёртый ордер, коэф.=2 (и должен появиться откат ...)
    пятый ордер,коэф.=2 (надеемся, что откат произойдёт...)
    шестой ордер,коэф.=1 (=0.5) (откат не произошёл, готовимся, к "худшему " движению ...)
    седьмой ордер,коэф.=1 (=0.5) (откат не произошёл, "держим", "худшее " движение ..., и можно открыть отлож.ордер по движению цены)
    восьмой ордер,коэф.=1 (=0.5) (откат не произошёл, "держим", "худшее " движение ..., и можно открыть отлож.ордер по движению цены)
    далее контроль MarginLevel , и если он уменьшился до определённого уровня,
    начинаем "откусывание" (--)ордеров, от середины серии набранных ордеров, пока MarginLevel не "вернётся" к своим значениям, выше определённого.
    Такая тактика торговли с использованием возрастающихся лотов, помогает "преодолеть" неожиданные движения затяжных трендов.
    всем успехов в торговле!

    Последний раз редактировалось MT@MT; 11.12.2014 в 14:34.

  22. post_thanks Получено лайков: 1

    Cybra (11.12.2014)

  23. линк#93
    Свой человек
    В думах
     
    Gurtik хорошая репутация Gurtik хорошая репутация Gurtik хорошая репутация Gurtik хорошая репутация Аватар для Gurtik
    Регистрация:
    19.06.2011
    Пол:
    Мужчина
    Сообщений:
    672
    Накопленные выплаты (Подробнее):
    6355 RUB
    Поставил(а) лайков:
    253
    Получено лайков:   397
    в 179 сообщениях
    59%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от cgon Посмотреть сообщение
    Полностью написание функции
    Возможно ли дописать функции к сове? Взять простой тралингатор, добавить в него стартовый ордер (при установке совы выбор старта бай или селл) и второе изменение чтобы при сработке стоплосса автоматически открывался обратный ордер. Размер лота
    MQL код:
    /*
    Generated by EX4-TO-MQ4 decompiler V4.0.224.1 []
    Website: [url]http://purebeam.biz[/url]
    E-mail : [email]purebeam@gmail.com[/email]
    */
    #property copyright "Copyright @ Rita Lasker"
    #property link "http://www.ritalasker.com"

    extern bool ProfitTrailing = TRUE;
    extern double TrailingStop = 15.0;
    extern double TrailingStep = 2.0;
    extern int MagicNumber = -1;
    double gd_100;

    int init() {
    gd_100 = Point;
    if (Digits == 5 || Digits == 3) gd_100 = 10.0 * gd_100;
    return (0);
    }

    void start() {
    if (TrailingStop > 0.0 && OrdersTotal() > 0) RealTrailOrder();
    }

    void RealTrailOrder() {
    double l_ord_open_price_20;
    double l_ord_stoploss_28;
    double l_price_36;
    double ld_0 = MarketInfo(Symbol(), MODE_STOPLEVEL) * Point / gd_100;
    double ld_8 = MathMax(TrailingStop, ld_0);
    for (int l_pos_16 = OrdersTotal() - 1; l_pos_16 >= 0; l_pos_16--) {
    if (OrderSelect(l_pos_16, SELECT_BY_POS, MODE_TRADES) == TRUE) {
    if (OrderMagicNumber() == MagicNumber || MagicNumber < 0 && OrderSymbol() == Symbol()) {
    l_ord_open_price_20 = OrderOpenPrice();
    l_ord_stoploss_28 = OrderStopLoss();
    while (IsTradeContextBusy()) Sleep(500);
    RefreshRates();
    if (OrderType() == OP_BUY) {
    l_price_36 = ND(Bid - ld_8 * gd_100);
    if (Bid > l_ord_open_price_20 + ld_8 * gd_100 || !ProfitTrailing && l_price_36 >= l_ord_stoploss_28 + TrailingStep * gd_100 && ld_8 * gd_100 > ld_0 * gd_100) {
    if (!OrderModify(OrderTicket(), OrderOpenPrice(), l_price_36, OrderTakeProfit(), 0, Blue))
    if (!IsOptimization()) Print("BUY OrderModify Error " + GetLastError());
    }
    }
    if (OrderType() == OP_SELL) {
    l_price_36 = ND(Ask + ld_8 * gd_100);
    if (Ask < l_ord_open_price_20 - ld_8 * gd_100 || !ProfitTrailing && l_price_36 <= l_ord_stoploss_28 - TrailingStep * gd_100 || l_ord_stoploss_28 == 0.0 && ld_8 * gd_100 > ld_0 * gd_100) {
    if (!OrderModify(OrderTicket(), OrderOpenPrice(), l_price_36, OrderTakeProfit(), 0, Red))
    if (!IsOptimization()) Print("Sell OrderModify Error " + GetLastError());
    }
    }
    }
    }
    }
    }

    double ND(double ad_0) {
    return (NormalizeDouble(ad_0, Digits));
    }


  24. post_thanks Получено лайков: 2

    Cybra (11.12.2014), MT@MT (11.12.2014)

  25. линк#94
    Частый гость
    MT@MT стараюсь положительно себя зарекомендовать Аватар для MT@MT
    Регистрация:
    30.07.2014
    Пол:
    Мужчина
    Сообщений:
    201
    Накопленные выплаты (Подробнее):
    1693 RUB
    Поставил(а) лайков:
    231
    Получено лайков:   65
    в 48 сообщениях
    32%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от Gurtik Посмотреть сообщение

    зачем нужно "дорабатывать" декомпил, если ваё можно написать(сделать) и без декомпила,
    чисто,красиво и надёжно.

    P.S. "...чтобы при сработке стоплосса автоматически открывался обратный ордер ..." не всегда "оправдывает" себя в реальных торговых ситуациях.
    Как правило SL "выбивают" и движение идёт дальше, но не по направлению "выбитого" SL.


  26. post_thanks Получено лайков: 2

    Cybra (11.12.2014), Gurtik (11.12.2014)

  27. линк#95
    Свой человек
    В думах
     
    Gurtik хорошая репутация Gurtik хорошая репутация Gurtik хорошая репутация Gurtik хорошая репутация Аватар для Gurtik
    Регистрация:
    19.06.2011
    Пол:
    Мужчина
    Сообщений:
    672
    Накопленные выплаты (Подробнее):
    6355 RUB
    Поставил(а) лайков:
    253
    Получено лайков:   397
    в 179 сообщениях
    59%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от MT@MT Посмотреть сообщение
    зачем нужно "дорабатывать" декомпил, если ваё можно написать(сделать) и без декомпила,
    чисто,красиво и надёжно.

    P.S. "...чтобы при сработке стоплосса автоматически открывался обратный ордер ..." не всегда "оправдывает" себя в реальных торговых ситуациях.
    Как правило SL "выбивают" и движение идёт дальше, но не по направлению "выбитого" SL.
    Давно уже прошу программистов написать канальный трал, мне все говорят что это заведомо убыточная сова, вот задание писал две страницы назад, тоже самое одни упрёки...
    именно такую сову хочу попробовать подстроить под индексы, акции и экзотические пары со спрэдом 5-20 пунктов.

    Цитата Сообщение от Gurtik Посмотреть сообщение
    Эксперемент
    Добрый день, особых надежд на сову не возлагаю, нужно для эксперимента, если Вас не затруднит.
    Суть совы: при включении выставляется два стоповых ордера бай и селл (в настройках 20) значит расстояние между ордерами тоже 20, при сработке одного из ордеров, второй начинает тралится на те-же 20 пунктов, степ трала 2 (в настройки не вносить), при сработке обратного ордера, предыдущий закрывается и выставляется новый стоповый ордер и опять тралится.
    Хочу проверить на экзотике, там на многих инструментах движение более слабое, но более стабильное.
    &
    Альтернативные варианты не предлагать уже есть три шт., но не то.


  28. post_thanks Получено лайков: 2

    Cybra (11.12.2014), MT@MT (11.12.2014)

  29. линк#96
    Частый гость
    MT@MT стараюсь положительно себя зарекомендовать Аватар для MT@MT
    Регистрация:
    30.07.2014
    Пол:
    Мужчина
    Сообщений:
    201
    Накопленные выплаты (Подробнее):
    1693 RUB
    Поставил(а) лайков:
    231
    Получено лайков:   65
    в 48 сообщениях
    32%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от Gurtik Посмотреть сообщение
    Давно уже прошу программистов написать канальный трал, мне все говорят что это заведомо убыточная сова, вот задание писал две страницы назад, тоже самое одни упрёки...
    именно такую сову хочу попробовать подстроить под индексы, акции и экзотические пары со спрэдом 5-20 пунктов.
    Суть совы: при включении выставляется два стоповых ордера бай и селл (в настройках 20) значит расстояние между ордерами тоже 20, при сработке одного из ордеров, второй начинает тралится на те-же 20 пунктов, степ трала 2 (в настройки не вносить), при сработке обратного ордера, предыдущий закрывается и выставляется новый стоповый ордер и опять тралится.
    Хочу проверить на экзотике, там на многих инструментах движение более слабое, но более стабильное.
    есть уже готовые (иниверсальные настройки отлож.ордеров) советники с использованием отлож.ордеров, которые успешно можно (вам) использовать для экспериментов,
    н.п. Гоп-Стоп


  30. post_thanks Получено лайков: 2

    Cybra (11.12.2014), Gurtik (11.12.2014)

  31. линк#97
    V.I.P.
    Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Cybra авторитетный пользователь Аватар для Cybra
    Регистрация:
    11.05.2014
    Сообщений:
    14,772
    Накопленные выплаты (Подробнее):
    200433 RUB
    Поставил(а) лайков:
    4,034
    Получено лайков:   4,269
    в 3,587 сообщениях
    29%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от MT@MT Посмотреть сообщение
    первый ордер, коэф.=1
    второй ордер, коэф.=1
    третий ордер, коэф.=1
    четвёртый ордер, коэф.=2 (и должен появиться откат ...)
    пятый ордер,коэф.=2 (надеемся, что откат произойдёт...)
    шестой ордер,коэф.=1 (=0.5) (откат не произошёл, готовимся, к "худшему " движению ...)
    седьмой ордер,коэф.=1 (=0.5) (откат не произошёл, "держим", "худшее " движение ..., и можно открыть отлож.ордер по движению цены)
    восьмой ордер,коэф.=1 (=0.5) (откат не произошёл, "держим", "худшее " движение ..., и можно открыть отлож.ордер по движению цены)


    полная хрень, смысл в том чтобы поглощение осуществлять со второго ордера а не с десятого в убыток.. потому что 12345 ордеров срабатывает а 5й сработал ниже чем 321 вместе взятые и что дальше если он не превышает их все по сумме? )

    С уважением.

  32. post_thanks Получено лайков: 1

    MT@MT (12.12.2014)

  33. линк#98
    Свой человек
    В думах
     
    Gurtik хорошая репутация Gurtik хорошая репутация Gurtik хорошая репутация Gurtik хорошая репутация Аватар для Gurtik
    Регистрация:
    19.06.2011
    Пол:
    Мужчина
    Сообщений:
    672
    Накопленные выплаты (Подробнее):
    6355 RUB
    Поставил(а) лайков:
    253
    Получено лайков:   397
    в 179 сообщениях
    59%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от MT@MT Посмотреть сообщение
    есть уже готовые (иниверсальные настройки отлож.ордеров) советники с использованием отлож.ордеров, которые успешно можно (вам) использовать для экспериментов,
    н.п. Гоп-Стоп
    Спасибо, но это далеко не то что мне надо.


  34. линк#99
    В начале пути
    Pixes стараюсь положительно себя зарекомендовать Аватар для Pixes
    Регистрация:
    11.12.2014
    Пол:
    Мужчина
    Сообщений:
    2
    Накопленные выплаты (Подробнее):
    13 RUB
    Поставил(а) лайков:
    0
    Получено лайков:   0
    в 0 сообщениях
    0%
    ПодписатьсяПодписаться
    Подписано: 0
    Доброе время суток все!
    Помогите написать простой алерт для МТ4!
    Нужно, чтоб после выставления нескольких ценовых уровней и при подходе текущей цены этим уровням, просто проигрывался АЛЕРТ со звуком.


  35. <a href="https://www.mt5.com/ru/forex_analysis">Форекс портал</a>
  36. линк#100
    Свой человек
    sergey19898 приемлемый уровень репутации sergey19898 приемлемый уровень репутации Аватар для sergey19898
    Регистрация:
    28.02.2014
    Пол:
    Мужчина
    Сообщений:
    435
    Накопленные выплаты (Подробнее):
    3032 RUB
    Поставил(а) лайков:
    67
    Получено лайков:   114
    в 93 сообщениях
    26%
    ПодписатьсяПодписаться
    Подписано: 0
    Цитата Сообщение от Meoda Посмотреть сообщение
    sergey19898, вы не могли бы на примере моего кода показать куда втыкать всё это дело? )
    вот пример:
    MQL код:

    //+------------------------------------------------------------------+
    //| Percheron.mq4 |
    //| Copyright 2014, Meoda ---- Corp |
    //| extern double OP_BUY_Level = 30.7; [url]http://www.00000.00[/url] |
    //+------------------------------------------------------------------+
    #property copyright "Copyright 2014, Meoda AAARF Corp"
    #property link "http://www.aaarf.eu"
    #property version "1.00"
    #property strict
    //--------------------------------------------------------------------

    extern int RSI_period = 454; // период
    extern int RSI_price = 0; // тип цены
    extern int OP_SELL_Level_1 = 60; // уровень 1 входа сел
    extern int OP_SELL_Level_2 = 55; // уровень 2 входа сел
    extern int OP_SELL_Level_3 = 53; // уровень 3 входа сел
    extern int CLOSE_SELL_Level_1 = 52; // уровень выхода сел
    extern int CLOSE_SELL_Level_2 = 52; // уровень выхода сел
    extern int CLOSE_SELL_Level_3 = 52; // уровень выхода сел
    extern int CLOSE_BUY_Level_1 = 48; // уровень выхода бай
    extern int CLOSE_BUY_Level_2 = 48; // уровень выхода бай
    extern int CLOSE_BUY_Level_3 = 48; // уровень выхода бай
    extern int OP_BUY_Level_3 = 46; // уровень 3 входа бай
    extern int OP_BUY_Level_2 = 45; // уровень 2 входа бай
    extern int OP_BUY_Level_1 = 40; // уровень 1 входа бай
    extern double LOT = 0.1; // размер лота
    extern int stoploss = 0; // закрывает сам по стоплоссу
    extern int takeprofit = 0; // закрывает сам по тейкпрофиту
    extern int Slippage = 3; // проскальзывание
    extern bool CloseRevers = false; // закрывает сам по обратному сигналу, если установлен true
    extern bool CloseOrders = true; // закрытие ордеров и ожидание сигнала
    extern int MaxOrders = 12; // максимальное кол-во открыти¤ ордеров
    extern int Magic = 123; // Magic
    int BUY,SELL;
    //--------------------------------------------------------------------
    bool OrderClos;
    static int TimeBar;
    //--------------------------------------------------------------------
    int start()
    {
    if (TimeBar==Time[0]) return(0);
    BUY=0;SELL=0;
    int One=0;
    for( One = OrdersTotal()-1; One>=0; One--)
    {
    if(OrderSelect(One, SELECT_BY_POS, MODE_TRADES))
    {
    if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic){
    if(OrderType() == OP_BUY){BUY++;}
    if(OrderType() == OP_SELL){SELL++;}}
    }
    }
    double RSI_1 = iRSI(NULL,0,RSI_period,RSI_price,1); //значение инд на 1 баре
    double RSI_2 = iRSI(NULL,0,RSI_period,RSI_price,2); //значение инд на 2 баре
    double LotsB=0;
    if(BUY==0)
    {
    LotsB=LOT;
    }
    else
    {
    double lot=GetLotOpenPos(OP_BUY);
    if(BUY==4){LotsB=lot*1.5;}
    else{LotsB=lot*2;}
    }
    double LotsS=0;
    if(SELL==0)
    {
    LotsS=LOT;
    }
    else
    {
    double lot=GetLotOpenPos(OP_SELL);
    if(SELL==4){LotsS=lot*1.5;}
    else{LotsS=lot*2;}
    }
    double SL,TP;
    if((RSI_2OP_BUY_Level_1)|| //условие на бай
    (RSI_2OP_BUY_Level_2)|| //условие на бай
    (RSI_2OP_BUY_Level_3)) //условие на бай
    { //больше уровн¤ 30, пересечение снизу вверх
    if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); else TP = 0;
    if (stoploss!=0) SL = NormalizeDouble(Bid - stoploss*Point,Digits); else SL = 0;
    if (CloseRevers) CLOSEORDER(OP_SELL);
    if (MaxOrders>OrdersTotal())
    if (OrderSend(Symbol(),OP_BUY, LotsB,NormalizeDouble(Ask,Digits),Slippage,SL,TP," EA_RSI",Magic, 0, DodgerBlue)!=-1)
    TimeBar=Time[0]; else Print("EA_RSI - OrderSend BUY Error ",GetLastError()," SL ",SL," TP ",TP);
    }
    if((RSI_2>OP_SELL_Level_1 && RSI_1 (RSI_2>OP_SELL_Level_2 && RSI_1 (RSI_2>OP_SELL_Level_3 && RSI_1 { //меньше уровн¤ 70, пересечение сверху вниз
    TimeBar=Time[0];
    if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); else TP = 0;
    if (stoploss!=0) SL = NormalizeDouble(Ask + stoploss*Point,Digits); else SL = 0;
    if (CloseRevers) CLOSEORDER(OP_BUY);
    if (MaxOrders>OrdersTotal())
    if (OrderSend(Symbol(),OP_SELL,LotsS,NormalizeDouble( Bid,Digits),Slippage,SL,TP,"EA_RSI",Magic, 0, Red)!=-1)
    TimeBar=Time[0]; else Print("EA_RSI - OrderSend SELL Error ",GetLastError()," SL ",SL," TP ",TP);
    }
    if((RSI_2CLOSE_BUY_Level_1)|| //условие закрыти¤ бай
    (RSI_2CLOSE_BUY_Level_2)|| //условие закрыти¤ бай
    (RSI_2CLOSE_BUY_Level_3)) //условие закрыти¤ бай
    if(CloseOrders) CLOSEORDER(OP_BUY);

    if((RSI_2>CLOSE_SELL_Level_1 && RSI_1 (RSI_2>CLOSE_SELL_Level_2 && RSI_1 (RSI_2>CLOSE_SELL_Level_3 && RSI_1 if(CloseOrders) CLOSEORDER(OP_SELL);
    return(0);
    }
    //--------------------------------------------------------------------
    void CLOSEORDER(int ord)
    {
    for (int i = OrdersTotal() - 1; i >= 0; i--)
    {
    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
    {
    if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
    {
    if (OrderType()==OP_BUY && ord==OP_BUY)
    OrderClos=OrderClose(OrderTicket(),OrderLots(),Nor malizeDouble(Bid,Digits),Slippage,Magenta);
    if (OrderType()==OP_SELL && ord==OP_SELL)
    OrderClos=OrderClose(OrderTicket(),OrderLots(),Nor malizeDouble(Ask,Digits),Slippage,Magenta);
    }
    }
    }
    }
    //--------------------------------------------------------------------
    double GetLotOpenPos(int tip)
    {
    datetime o;
    double l=0;
    int i, k=OrdersTotal();
    for (i=0; i {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    {
    if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == tip)
    {
    if (o {
    o=OrderOpenTime();
    l=OrderLots();
    }
    }
    }
    }
    return(l);
    }


  37. post_thanks Получено лайков: 4

    Cybra (11.12.2014), erkon (05.04.2018), Gurtik (11.12.2014), MT@MT (12.12.2014)


Страница 5 из 471
Первая ... 4 5 6 15 ... Последняя ◄╝

Подписанные на тему (142)

Похожие темы

  1. Написание программ на mql4 под заказ
    от Viper70 в разделе Доска объявлений
    Replies: 181
    Последнее сообщение: 08.09.2018, 16:00
  2. [Архив] MQL4: Бесплатное написание программ
    от ENSED в разделе MQL-программирование, АТС
    Replies: 15804
    Последнее сообщение: 28.11.2014, 20:35
  3. Replies: 51
    Последнее сообщение: 01.01.2014, 21:59
  4. Написание программ (советников, индикаторов) на MQL4
    от Ramben в разделе Доска объявлений
    Replies: 24
    Последнее сообщение: 07.11.2011, 12:21

Метки этой темы