[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 995

 
Привет всем, скажите возможно ли такое условие(если цена поднимается,то ордер остается открытый, но если цена опустилас на 2 пункта-закрываем ордер) подскажите как правилно сделат
if (iMomentum(NULL,0,-2,PRICE_HIGH,0)) 
      {
      OrderClose(OrderTicket(),OrderLots(),0,Bid,Violet);
 
artmedia70:

Чёт я никак в толк себе не возьму... а зачем вам в функции определения торговых критериев высчитывать средний спред по n-ному кол-ву баров истории ???

Если уж курочите функции из учебника СК, то логичнее было бы делать это в ф-ции Events().

Вот как раз в ней и посмотрите как СК предлагает отслеживать изменение уровня СтопЛевел брокера. Что же вам мешает точно также отследить и изменение спреда и, если таковое имеет место быть, заносить очередное значение в массив. Ну, и при заполнении массива высчитывать его "среднюю температуру по больнице" (с) СК...

смысл в том что в разное время дня разные спреды, и бывает так что при среднем спреде моя торговая система будет успешно торговать при спреде скажем 12 пунктов, а при спреде 6 уже будет сливать и наоборот если заточить под спред 6 то при 12 будет слив, т оесть от этого параметра зависит уровни выставления отложенников, я чуть позже выложу всю задумку, но сейчас что бы не смешить народ необходимо кое что поэтапно сделать, и еще сегодня я впервые столкнулся с Freeze level это что ж значит, что если я открыл ордер с тейком и стопом, допустим на бай, и он в рынке допустим не допустим а так и было он выходит в плюс на 100 пипсов в пятизнаке, а тейк стоит изначально на 150 пипсов, но вот, он вышел в плюс, тут условия изменились и мне необходимо его закрыть по рынку и открыться на сел, а выходит сообщение модификация не разрешена, это что же получается что если поставил стоплос и тейк и если цена около той зоны, то я не смогу по рынку не ограничит убытки и не зафиксировать профит? и что получилось система все рассчитала правильно я подал команду на переворот, терминал отказал и цена ушла вниз тем самым не отрыв селл и не зафиксировав по баю

как с этим можно бороться?

 
ex_kalibur:

смысл в том что в разное время дня разные спреды, и бывает так что при среднем спреде моя торговая система будет успешно торговать при спреде скажем 12 пунктов, а при спреде 6 уже будет сливать и наоборот если заточить под спред 6 то при 12 будет слив, т оесть от этого параметра зависит уровни выставления отложенников, я чуть позже выложу всю задумку, но сейчас что бы не смешить народ необходимо кое что поэтапно сделать, и еще сегодня я впервые столкнулся с Freeze level это что ж значит, что если я открыл ордер с тейком и стопом, допустим на бай, и он в рынке допустим не допустим а так и было он выходит в плюс на 100 пипсов в пятизнаке, а тейк стоит изначально на 150 пипсов, но вот, он вышел в плюс, тут условия изменились и мне необходимо его закрыть по рынку и открыться на сел, а выходит сообщение модификация не разрешена, это что же получается что если поставил стоплос и тейк и если цена около той зоны, то я не смогу по рынку не ограничит убытки и не зафиксировать профит? и что получилось система все рассчитала правильно я подал команду на переворот, терминал отказал и цена ушла вниз тем самым не отрыв селл и не зафиксировав по баю

как с этим можно бороться?

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

Проблема в том, что все работает, НО! он двигает стоп лос как в одну так и в другую сторону, что нужно добавить, чтоб он двигал стопл лос только в сторону открытой сделки!?

Вот в общем мое:

if (Ticket> 0)
{
if (Opn_B == true)
{
SL = Ask - TS*Point;
Ticket= OrderModify(Ticket,Price,SL,TP,0);
}
if (Opn_S == true)
{
SL = Ask + TS*Point;
Ticket= OrderModify(Ticket,Price,SL,TP,0);
}
}
 

ex_kalibur благодарю за аську, как-нибудь вам напишу.

 
ZahvatkiN:

ex_kalibur благодарю за аську, как-нибудь вам напишу.

непонял?
 

Добрый вечер!

Подскажите как мне экспортировать данные с графика (показатели индикатора) из Метатрэйдера 4 в Exel?

Буду рад помощи и подсказкам :)

 
Print тебе поможет :)
 

Уважаемый artmedia70, выражаю огромную благодарность за то что вы активно помогаете в этой ветке, нижеследующие писание направляется в основном к вам, но, если есть здесь еще специалисты, то прошу не проходить мимо и помочь, получилось как в сказке чем дальше в лес тем больше дров, в итоге накрутив навертев я вошел в стопор, и мне очень необходима помощь, надеюсь данная стратегия будет реализована и многие новички обретут опыт в последовательном и эффективном программировании

задача следующая:

1. находим переменные Low и High ( процесс нахождения остается для каждого свой)

2. нужно вычислить средний спред за N последних тиков (переменная N во внешнюю)

3.при условии High - Low > чем Средний спред на k части ширины канала (пример 2/3 или минимум 1/3 от ширины канала)

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

- выше линии High - Sell

- ниже линии Low - Bay

ордера выставляются в обе стороны применяя сетку:

*самый близкий ордер Sell будет минимальным объемом, и выставляется при возможности на уровне High,

* следующий на расстояние High + какое то количество пунктов ( для примера High +(High -Low ))

* следующий опять же на расстояние скажем (пример High +(High -Low )*2) и так далее, общее количество ордеров должно задаваться во внешней переменной, при этом каждый ордер имеет не равный обьем ( пример первый0,1 второй 0,2 третий 0,3 и т.д. здесь предполагается различные методы увеличения обьмов в арифметической прогрессии или в геометрической, позднее тут определимся, соответственно этот блок нужно вывести в отдельную функцию,)

* Стоплос выставляется следующий: во внешних настройках указываем желаемый СЛ, далее на самом первом (он же самый маленький) СЛ равен StopLoss (из настроек), каждый последующий стоплос будет равен тому же значению что и на первом( для 0,1 = 60 п., для 0,2 = 40п. т.е в случае срабатывания стоплоса по самому маленькому ордеру закрываются сразу все

* Тейк профит равен (High -Low)* Point +цена открытия

*условия закрытия по рынку:

открыт Bay-

если ордер в профите, верхний уровень High изменился и стал ниже предыдущего значения, Bid>= High,StopLewel позволяет закрыть ордер, то закрываем все открытые ордера типа Bay, начиная с большего обьема нашего инструмента

*условия открытия по рынку:

если Bay ==0, и при этом Bid < Low и при этом Ask< High + средний спред, то открываем минимально разрешимым обьемом и удаляем отложенный ордер данного типа с минимальным обьемом( если позволят условия)

если во время торгов открывается отоженный ордер большего значения чем самый первый и закрывается по тейку, то мы вновь выставляем отложенник с тем же обьемом по той же цене что и закрылся( при условии если разрешет ) если же выставление отложенника не возможно, и после закрытия последнего ордера цена вновь пересекает ену открытия последнего закрытого ордера то

входим по рынку с тем же обьемом и по той же цене с +- слиппйдж

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

* все то время пока в рынке открытые ордера идет так же расчет на противоположенный тип и соответсвенно накидывается сетка на противоположенный тип ордеров

* пока открыт первый( с минимальным обьемом)ордер то открытие противоположенных ордеров не допустимо

5. расчет обьемов лота, допускается либо фиксированный либо процентный в настройках:

-при фиксированном соответственно все ордера одним фикс. обьемом

-при процентном - сумма обьемов всех ордеров в случае закрытия сетки ( серии ) по стоплоссу не должна превышать разрешенный убыток в %

соответственно обьемы рассчитываются в таком порядке, что максимальный он же самый далекий к текущей цене, и с минимальным стоплоссом, а самые близкие к цене - минимальные(

Пример серия 0,1\0,2\0,3\0,4\0,5 -так выглядят ели хватает средств и % позволяет открыть в таком порядке

серия 0,1\0,1\0,1\0,2\0,3 - в этом случае нехватает денег на полную серию

6. блок расчета минимального депозита

*здесь происходит расчет возможного максимального убытка просчитывается исходя из значений переменных High,Low считается что откроются все отложенные ордера, и закроются по стоплоссу, соответсвенно данный убыток должен составлять какой то процент от депо, о чем после расчетов трейдеру выдается сообщение:

" с выбранным % риска, в случае закрытия ордеров по стоплосу, вы несете убыток в размере...,",

или " средств для проведения одной убточной серии нехватает, эксперт не работает"

7. Функции:слежения за событиями, информационные, ошибки хотелось бы видить как из книжки

8. и наверно последнее, какая то "кнопка" или специальная функция, при нажатии на которую ( или изменение в настройках) происходит следующее, удаляются все отложенные ордера противоположенного типа,от открытого( если в рынке бай, то селл все удаляются) и эксперт работает до тех пор пока не закроется серия

просьба если кто возметсся за работу, программу писать в соответсвии со структурой книги https://book.mql4.com/ru/build/index

для этого в этом посте я на всякий случай прикреплю все файлы программы из книги, и в каждой из этих файлов начнем работу, после завершения каждого отдельного файла он будет сохранен и так же прикреплен для всеобщего пользования, по завершению кодирования программа так же будет выложенна на этом форуме

предупреждаю сразу что данная задумка носит исключительно познавательный, обучающий характер, и не гарантирует что по завершению эксперт будет прибыльным,это касается всех полипов, которые днями и часами ищут Граал, и хотят чужей жопой ежа задавить))))

по завершению програмирования лично мой цель, научиться кодировать в такой структуре, тоесть со всеми не гласными правилами, : коментариями, отдельными функциями, внешниме файлами работа с библиотеками ну и все в этом духе

 

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

поэтому жду коменариев по моим наброскам, давайте напишем Тз грамотное и тогда начнем

Причина обращения: