double profit_positions = 0;
double Lot = 0; // Высчитываем лот который у нас останется после вычитания меньшего лота направления из большего/* расчитываем лот и текущий профит */double tick_value = SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_VALUE)*Lot;
double take_profit = profit_positions < 0 ? (MathAbs(profit_positions) + 10) : (10 - profit_positions);
int pipsProfit = (int)MathFloor( take_profit / tick_value ); // сколько пунктов нужно отступить от текущей цены. Выше, или ниже в зависимости от того куда у нас больше лот
Написал на коленке. Если ни чего не упустил, то вполне должно быть рабочим вариантом. Само собой если один символ. С разными все нужно делать на лету.
да при общем профите в 10 долларов все 4 сделки по цене 0,75842 будут закрыты
первая и третья с убытком вторая и четвёртая с прибылью если всё сложить получится +10 долларов сейчас не учитываем не спред не своп не проскальзывания
чисто теоретически как найти 0,75842 вот это число?
У меня в функции расчета единого ТП для однонаправленных ордеров, такая формула:
// --- Кол-во пунктов для единого ТП = общий профит / (ст-ть пункта * сумма всех лотов)
totalPoints = profitMoney / (MarketInfo(Symbol(), MODE_TICKVALUE) * sumLots);
profitMoney - это сколько хотим получить прибыли в денежном выражении.
В вашем случае организуйте расчет profitMoney = 10 дол. + убыток по модулю. Т.е. если убыток -20 дол, а профит нужен 10 дол., тогда profitMoney = 30 дол.
sumLots = это разница между лотами двух направлений.
Вообще это все чисто теория. Будет работать только на постоянно жестком спреде. Чего даже у "лучшего брокера" не наблюдается, все равно бывают скачки. Как уже говорил выше, лучше с разнонаправленными позициями работать с лету. Иначе при расхождении/сужении спреда, легко поймать проблему. Закрытие то происходит по ASK и BID разных направлений.
была иногда посещал 6,7,8 классы даже когда в школу не приходил была стабильно 5 и весь класс у меня списывал
потом съехал на четыре так и закончил школу
, чё не так с вопросом
Вот и выводите формулу. А как ее выводить - подсказано.
Само собой если один символ. С разными все нужно делать на лету.
да при общем профите в 10 долларов все 4 сделки по цене 0,75842 будут закрыты
первая и третья с убытком вторая и четвёртая с прибылью если всё сложить получится +10 долларов сейчас не учитываем не спред не своп не проскальзывания
чисто теоретически как найти 0,75842 вот это число?
У меня в функции расчета единого ТП для однонаправленных ордеров, такая формула:
profitMoney - это сколько хотим получить прибыли в денежном выражении.
В вашем случае организуйте расчет profitMoney = 10 дол. + убыток по модулю. Т.е. если убыток -20 дол, а профит нужен 10 дол., тогда profitMoney = 30 дол.
sumLots = это разница между лотами двух направлений.
По идее, должно выдать, то что нужно.
Выразил формулу:
CPB = (Прибыль$ + Сумма(BO*BL*PC) - Сумма(SO*SL*PC) + Сумма(S*SL*PC))/(Сумма(BL*PC)- Сумма(SL*PC))
CPB - искомая цена закрытия (бид)
ВО - цена открытия бай
BL - лот бай
PC - стоимость пункта
SО - цена открытия селл
SL - лот селл
---
Осталось определиться со стоимостью пункта.
Вот так вот. С ответом немного не сходится - получается 0.75855 вместо 0.75842. Надо спред покрутитить в пятом знаке.
---
Покрутил спред, получается 0.00034 - 0.00035
раз уж спреды и проскальзывание не волнуют, то
считайте как будто на каждом шаге предыдущую сделку закрываете,
а полученный профит добавляете в копилку. (или отнимаете убыток )
следующую цель ставите чтобы в копилке вышло 10$.
---
на сколько пунктов поставить TakeProfit чтобы с N лотов заработать K баксов выше наверное написали :-)
Вот так вот. С ответом немного не сходится - получается 0.75855 вместо 0.75842. Надо спред покрутитить в пятом знаке.
---
Покрутил спред, получается 0.00034 - 0.00035
круто снимаю шляпу
Я всегда думал что её можно только закатить.
Я всегда думал что её можно только закатить.
ну уууууу а и про что ты написал по подробней к чему ты это?
что у тебя в голове ?
о чём ты думаешь ?
поясни может тут один я такой тупой не понимаю к чему твой коментарий ?
я задал теоретическую задачу ,человек написал скрипт который считает результат , вывел формулу
я в свою очередь написал круто , снимаю шляпу - это означает что человек молодец как профессионал как программист знает своё дело , круто уважаю таких
и тут вдруг откуда не возьмись появился ты с коментарием
Я всегда думал что её можно только закатить.
поясни к чему ты это написал ?