[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 233
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Здравствуйте уважаемые Гуру МТ4.
Подскажите пожалуйста, как обойти ситуацию, когда OrderSend возвращает -1, но ордер открывает?
Подскажите пожалуйста, как обойти ситуацию, когда OrderSend возвращает -1, но ордер открывает?
Для позиции, открытой по цене 1500, тейк в 1570 будет нормальным (если не учитывать СтопЛевел), а вот для позиции, открытой по цене 1600, тейк в 1570 вызовет ошибку 130 - неправильные стопы. Ведь тейк не может быть ниже цены открытия для Buy. Это уже СтопЛосс.
Для двух позиций вы определили вашу точку безубытка, а для трёх-четырёх-пяти?
Вы бы сначала определились с формулой безубытка по однонаправленным позициям, а уж потом и логику можно составить.
я согласен, что нужно делать СтопТЛосс у ордера с ценой 1600
у открытия ордера функция начинается:
у всех остальных ордеров будет такое же открытие,
Все зависит от того, когда мы устанавливаем или меняем тейкпрофит. Считается он от текущей цены.
считаем между ордерами: ((Ask - OrderBuy2) - swop - ...) + ((Ask - OrderBuy1) - swop - ...) = Profit получаем количество пунктов которые можем потерять, так как они в плюсе
((Ask - OrderBuy3) -/+ swop -/+ ...) + ((Ask - OrderBuy2) - swop - ...) + ((Ask - OrderBuy1) - swop - ...) = Profit
Ask = 1620; Ask = 1760; OrderBuy3 = 1700
((1620 - 1500) - 4 - 6) +( (1620 - 1600) - 4 - 6) = 120; для 3 -х и более добавляем ((1760 - 1700) - 4 - 6) + ((1760 - 1500) - 4 - 6) +( (1760 - 1600) -4 - 6) = 450
LotOrderBuy1 = 0.01; LotsS = 0.01
LotOrderBuy2 = 0.02; LotsS = 0.03
LotOrderBuy3 = 0.03 ; LotsS = 0.06
Общий лот LotsS = LotOrderBuy1 + LotOrderBuy2 = 0.03; для 3 -х и более добавляем
И вот нужно понять, сколько лотов нужно пройти, что бы съесть 120 пунктов или в деньгах сумму прибыли.
Чтобы получить StopProfit
Ask - StopProfit * Point = LineTakeProfit для OrderBuy1 и LineStopLoss для OrderBuy2
LotsS = 0.06
как то вот так я это вижу
Попробуйте пользовать эту ф-ию - Функция OpenPosition() для online.
Спасибо огромное. Идея понятна, буду пробовать.
Может кто прояснить такой момент. Вот ссылка https://www.mql5.com/ru/code/8102. Скрипт (советник прикрепил) . Там советник скидывает в файл котировки в цсв. почему при расчете чего либо в этом же файле экселя (ЦСВ) при егозакрытии (естественно пишет куда сохранить - я жму в этот же файл (вместо него)) а при повторном открытии терминала и файла все расчеты исчезают???
Заработала!!!! =))))) правда не так, как надо, но сам факт меня необычайно радует =))) мое глубочайшее спасибо =))))
считаем между ордерами: ((Ask - OrderBuy2) - swop - ...) + ((Ask - OrderBuy1) - swop - ...) = Profit получаем количество пунктов которые можем потерять, так как они в плюсе
((Ask - OrderBuy3) -/+ swop -/+ ...) + ((Ask - OrderBuy2) - swop - ...) + ((Ask - OrderBuy1) - swop - ...) = Profit
Ask = 1620; Ask = 1760; OrderBuy3 = 1700
((1620 - 1500) - 4 - 6) +( (1620 - 1600) - 4 - 6) = 120; для 3 -х и более добавляем ((1760 - 1700) - 4 - 6) + ((1760 - 1500) - 4 - 6) +( (1760 - 1600) -4 - 6) = 450
LotOrderBuy1 = 0.01; LotsS = 0.01
LotOrderBuy2 = 0.02; LotsS = 0.03
LotOrderBuy3 = 0.03 ; LotsS = 0.06
Общий лот LotsS = LotOrderBuy1 + LotOrderBuy2 = 0.03; для 3 -х и более добавляем
И вот нужно понять, сколько лотов нужно пройти, что бы съесть 120 пунктов или в деньгах сумму прибыли.
Чтобы получить StopProfit
Ask - StopProfit * Point = LineTakeProfit для OrderBuy1 и LineStopLoss для OrderBuy2
LotsS = 0.06
как то вот так я это вижу
Встречал как-то ответ на ваш вопрос. Даже найду его сейчас... Вот:
как расчитать судя из свободных средств и лота сколько пунктов (в поинтах) может пройти цена в минус??? есть у кого нибудь такой код???
формула связи: Лот=Деньги/(Стоплос*Тик)
Деньги - заработанное/потерянное
Стоплос - в пунктах брокера
Тик - MarketInfo(Symbol(), MODE_TICKVALUE)
Отсюда крутите как хотите:
Стоплос=Деньги / (Лот*Тик)
Деньги=Лот*Стоплос*Тик
Ещё вот это можно поюзать:
Расчёт уровня БУ для множества по одному инструменту:
сумма лотов = суммарная позиция (СП)
стоимость тика СП = СТ
профит СП = ПСП
Формула расчёта довольно проста:
КП = ПСП / (СТ * СП)
В которой узнаём количество пипс (КП) до уровня БУ относительно текущей цены (ТЦ) символа.
И подставив КП в формулу БУ = ТЦ - КП * Point получаем уровень цены БУ.
В зависимости от направления СП выбирается прибавлять либо отнимать от ТЦ.Терминал не видит историю