Здравствуйте. Такой вопрос.
Предположим, у меня есть одна позиция и я хочу узнать, где мне поставить TP, чтобы прибыль равнялась 100$. Есть ли какой-то простой способ найти этот уровень цены с нужной прибылью?
Я пока что смог только придумать метод перебора. Беру какой-нибудь уровень цены, считаю для него прибыль через CaccountInfo.OrderProfitCheck(), сдвигаю на 1 пипс, считаю снова и так, пока не найду максимально близкий к 100$. Но, мне кажется, это как-то кривовато. Если есть более прямые или элегантные решения, может ссылка на статью, или пример с реализацией, буду благодарен.
Спасибо за ответы.
Ответ почти такой же как для вопроса про ноль профита в соседней теме 😀
только теперь нужно приравнять величину профита к сумме пунктов по позициям умноженных на стоимость пункта
также см примеры кода там же в той теме
Ответ почти такой же как для вопроса про ноль профита в соседней теме 😀
только теперь нужно приравнять величину профита к сумме пунктов по позициям умноженных на стоимость пункта
также см примеры кода там же в той теме
Спасибо за ответ, буду разбираться )
Здравствуйте. Такой вопрос.
Предположим, у меня есть одна позиция и я хочу узнать, где мне поставить TP, чтобы прибыль равнялась 100$. Есть ли какой-то простой способ найти этот уровень цены с нужной прибылью?
Я пока что смог только придумать метод перебора. Беру какой-нибудь уровень цены, считаю для него прибыль через CaccountInfo.OrderProfitCheck(), сдвигаю на 1 пипс, считаю снова и так, пока не найду максимально близкий к 100$. Но, мне кажется, это как-то кривовато. Если есть более прямые или элегантные решения, может ссылка на статью, или пример с реализацией, буду благодарен.
Спасибо за ответы.
double LevelTP(double profit, //профит при котором позиция должна закрыться по ТП
double OrderLot, //объем позиции
string _SymbolOrder) //символ на котором открыта позиция
{
double PP=profit/(MarketInfo(_SymbolOrder,MODE_TICKVALUE)*OrderLot);
return(PP);
}
Ответ почти такой же как для вопроса про ноль профита в соседней теме 😀
только теперь нужно приравнять величину профита к сумме пунктов по позициям умноженных на стоимость пункта
также см примеры кода там же в той теме
Не совсем так.
Нужно сложить цены открытия ордеров и произведения цен открытых ордеров на объемы открытых ордеров
и поделить сумму цены открытых ордеров на суммы произведений )
Не совсем так.
Нужно сложить цены открытия ордеров и произведения цен открытых ордеров на объемы открытых ордеров
и поделить сумму цены открытых ордеров на суммы произведений )
верно
я слишком упростил
кстати для полной точности надо ещё поправку на комиссии + возможно свопы
+ подстановка правильной цены аск или бид для ТП при закрытии
double LevelTP(double profit, //профит при котором позиция должна закрыться по ТП
double OrderLot, //объем позиции
string _SymbolOrder) //символ на котором открыта позиция
{
double PP=profit/(MarketInfo(_SymbolOrder,MODE_TICKVALUE)*OrderLot);
return(PP);
}
Спасибо за пример. Выглядит гораздо проще, чем то, что я делал.
Как я понял, это MQL4. Пытаюсь переделать в MQL5
Я правильно понимаю, что MarketInfo(_SymbolOrder,MODE_TICKVALUE) показывает прибыль при сделке в 1 лот при сдвиге цены на 1 пипс?
Вроде в MQL5 нашел такую штуку SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_VALUE). Пока правда не понял, является ли это прямой заменой для MarketInfo(_SymbolOrder,MODE_TICKVALUE) из MQL4.Ответ почти такой же как для вопроса про ноль профита в соседней теме 😀
только теперь нужно приравнять величину профита к сумме пунктов по позициям умноженных на стоимость пункта
также см примеры кода там же в той теме
Глянул вашу программу, спасибо. Позаимствовал некоторые фишки в написании кода 👍
Спасибо за пример. Выглядит гораздо проще, чем то, что я делал.
Как я понял, это MQL4. Пытаюсь переделать в MQL5
Я правильно понимаю, что MarketInfo(_SymbolOrder,MODE_TICKVALUE) показывает прибыль при сделке в 1 лот при сдвиге цены на 1 пипс?
Вроде в MQL5 нашел такую штуку SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_VALUE). Пока правда не понял, является ли это прямой заменой для MarketInfo(_SymbolOrder,MODE_TICKVALUE) из MQL4.да, все верно - mql4. Под mql5 будет аналогично разница лишь в функции MarketInfo
Глянул вашу программу, спасибо. Позаимствовал некоторые фишки в написании кода 👍
всегда рад

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте. Такой вопрос.
Предположим, у меня есть одна позиция и я хочу узнать, где мне поставить TP, чтобы прибыль равнялась 100$. Есть ли какой-то простой способ найти этот уровень цены с нужной прибылью?
Я пока что смог только придумать метод перебора. Беру какой-нибудь уровень цены, считаю для него прибыль через CaccountInfo.OrderProfitCheck(), сдвигаю на 1 пипс, считаю снова и так, пока не найду максимально близкий к 100$. Но, мне кажется, это как-то кривовато. Если есть более прямые или элегантные решения, может ссылка на статью, или пример с реализацией, буду благодарен.
Спасибо за ответы.