Ищу советник, который в сделке сам будет определять количество контрактов под нужную сумму возможного убытка
Всем привет! :)
Постараюсь обозначить задачу... . Хочу, чтобы независимо от размера полученного стопа, убыток в деньгах был одинаковый. Без автоматического помощника это делается так: к примеру, мне нужно ограничить свой убыток в одной сделке до 3000 рублей. Когда я вижу сигнал на вход в рынок, то определяю цену, где будет стоять стоп. Затем на графике смотрю, сколько пунктов будет от точки входа до стопа и вычисляю (настроил табличку в Exel), сколько контрактов должно быть в сделке, чтобы при неблагоприятном исходе убыток составил 3000 рублей. То есть, будет стоп 20 пунктов, 70 или 100, количество контрактов для сделки подбирается таким образом, чтобы убыток был 3000 р.
Хочу не отвлекаться на расчеты и автоматизировать этот процесс. Было бы хорошо просто указать в настройках советника-помощника убыток на сделку в валюте депозита и чтобы на графике была панель, куда можно ввести цену стопа. Также на панели должны быть кнопки для покупки или продажи с маркета и лимитником. Соответственно, в настройках также должен указываться размер тейк профита.
То есть, указываем цену стопа, жмем на кнопку для совершения сделки и помощник автоматом считает, какой объем должен быть у сделки, чтобы возможный убыток не превысил 3000 р. и отправляет заявку в рынок.
Такое определение размера лота встраивается непосредственно в советник. Функция уже давно написана, но непосредственно в таком исполнении
советника у меня нет и не встречал. Хотя и не интересовался.
ограничить свой убыток в одной сделке до 3000 рублей.
я чему немного научился - вот слепил .
от вашего баланса отнимите какую сумму вы готовы потерять . и так же какую сумму хотите заработать . что первое сработает то и будет
//--- input double TargetLoss = 0.00; // Ваш Баланс - минус сумму убытка input double TargetProfit = 900000.00; // Ваш Баланс + плюс сумму прибыли //---то есть . если у вас баланс 100 и вы готовы потерять 2 значит здесь вписываем TargetLoss = 98; и все на оборот TargetProfit = 102; прибыль 2
я чему немного научился - вот слепил .
от вашего баланса отнимите какую сумму вы готовы потерять . и так же какую сумму хотите заработать . что первое сработает то и будет
то есть . если у вас баланс 100 и вы готовы потерять 2 значит здесь вписываем TargetLoss = 98; и все на оборот TargetProfit = 102; прибыль 2Александр, для тренировки сделайте такую функцию.
Задаём до открытия позиции возможный убыток в валюте депозита и уровень StopLoss.
Задача: Посчитать каким размером лота можно войти в рынок, чтобы в случае неудачи, другими словами если позиция закроется по стопу, была потеряна сумма не превышающая заданный допустимый размер.
Пока, все ваши потуги сводятся только к уже свершившемуся факту потери. Но не учитываете сколько пунктов было пройдено в минус.
Александр, для тренировки сделайте такую функцию.
Задаём до открытия позиции возможный убыток в валюте депозита и уровень StopLoss.
Задача: Посчитать каким размером лота можно войти в рынок, чтобы в случае неудачи, другими словами если позиция закроется по стопу, была потеряна сумма не превышающая заданный допустимый размер.
Пока, все ваши потуги сводятся только к уже свершившемуся факту потери. Но не учитываете сколько пунктов было пройдено в минус.
не! это - для меня . уже сложная задача. я ноль в этом. так простенькое -цель достигнута всё закрыло
Александр, для тренировки сделайте такую функцию.
Задаём до открытия позиции возможный убыток в валюте депозита и уровень StopLoss.
Задача: Посчитать каким размером лота можно войти в рынок, чтобы в случае неудачи, другими словами если позиция закроется по стопу, была потеряна сумма не превышающая заданный допустимый размер.
Пока, все ваши потуги сводятся только к уже свершившемуся факту потери. Но не учитываете сколько пунктов было пройдено в минус.
есть уже готовая функция - расчёта лота из терминала эксперт Moving Average.mq5
всё пытаюсь разобраться - как она всё рассчитывает. если разберусь , то может смогу решить вашу задачу
//+------------------------------------------------------------------+ //| Calculate optimal lot size | //+------------------------------------------------------------------+ double TradeSizeOptimized(void) { double price=0.0; double margin=0.0; //--- select lot size if(!SymbolInfoDouble(_Symbol,SYMBOL_ASK,price)) return(0.0); if(!OrderCalcMargin(ORDER_TYPE_BUY,_Symbol,1.0,price,margin)) return(0.0); if(margin<=0.0) return(0.0); double lot=NormalizeDouble(AccountInfoDouble(ACCOUNT_MARGIN_FREE)*MaximumRisk/margin,2); //--- calculate number of losses orders without a break if(DecreaseFactor>0) { //--- select history for access HistorySelect(0,TimeCurrent()); //--- int orders=HistoryDealsTotal(); // total history deals int losses=0; // number of losses orders without a break for(int i=orders-1;i>=0;i--) { ulong ticket=HistoryDealGetTicket(i); if(ticket==0) { Print("HistoryDealGetTicket failed, no trade history"); break; } //--- check symbol if(HistoryDealGetString(ticket,DEAL_SYMBOL)!=_Symbol) continue; //--- check Expert Magic number if(HistoryDealGetInteger(ticket,DEAL_MAGIC)!=MA_MAGIC) continue; //--- check profit double profit=HistoryDealGetDouble(ticket,DEAL_PROFIT); if(profit>0.0) break; if(profit<0.0) losses++; } //--- if(losses>1) lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1); } //--- normalize and check limits double stepvol=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_STEP); lot=stepvol*NormalizeDouble(lot/stepvol,0); double minvol=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN); if(lot<minvol) lot=minvol; double maxvol=SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX); if(lot>maxvol) lot=maxvol; //--- return trading volume return(lot); } //+------------------------------------------------------------------+
есть уже готовая функция - расчёта лота из терминала эксперт Moving Average.mq5
всё пытаюсь разобраться - как она всё рассчитывает. если разберусь , то может смогу решить вашу задачу
Решайте для себя не спеша. Я чужими кодами не пользуюсь, за исключением некоторых методов из CTrade. У меня всё давно своё готово.
Решайте для себя не спеша. Я чужими кодами не пользуюсь, за исключением некоторых методов из CTrade. У меня всё давно своё готово.
так я не тороплюсь. просто пока не пощупаешь, как оно устроено - не могу понять .
извините конечно что вмешиваюсь, но ЗАЧЕМ ?
вы что, планируете исключительно убытки.. у вас же есть второе плечо сделки, почему о нём забываете
нужно ограничить свой убыток в одной сделке до 3000 рублей.
указываем цену стопа, жмем на кнопку для совершения сделки и помощник автоматом считает, какой объем должен быть у сделки, чтобы возможный убыток не превысил 3000 р. и отправляет заявку в рынок.
на какой паре будет стоять - какой убыток или прибыль. будет закрывать в валюте
//--- input string t1="------ SL TP ----------"; // Trailing input double InStopLoss = 3000; // Stop Loss, сумма убытка input double InTakeProfit = 3000; // Take Profit, сумма прибыли //---
здесь вписываем сколько денег решили потерять InStopLoss = 3000; // Stop Loss, сумма убытка (можно и вписывать 0.5 )
или заработать InTakeProfit = 3000; // Take Profit, сумма прибыли
- ( ОТ ОДНОЙ ПОЗИЦИИ - потому как, на одной паре можно открыть много позиции )
![Общие принципы - Торговые операции - Справка по MetaTrader 5 Общие принципы - Торговые операции - Справка по MetaTrader 5](https://c.mql5.com/36/29/obschie-principi-torgovie-operacii__2.png)
- www.metatrader5.com
на какой паре будет стоять - какой убыток или прибыль. будет закрывать в валюте
здесь вписываем сколько денег решили потерять InStopLoss = 3000; // Stop Loss, сумма убытка( можно и вписывать 0.5 )
или заработать InTakeProfit = 3000; // Take Profit, сумма прибыли
- ( ОТ ОДНОЙ ПОЗИЦИИ - потому как, на одной паре можно открыть много позиции )
осталось найти - функцию счетовода
- что бы не вручную вписывать убыток или прибыль . а функция расчёта ,вписала эти значения
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем привет! :)
Постараюсь обозначить задачу... . Хочу, чтобы независимо от размера полученного стопа, убыток в деньгах был одинаковый. Без автоматического помощника это делается так: к примеру, мне нужно ограничить свой убыток в одной сделке до 3000 рублей. Когда я вижу сигнал на вход в рынок, то определяю цену, где будет стоять стоп. Затем на графике смотрю, сколько пунктов будет от точки входа до стопа и вычисляю (настроил табличку в Exel), сколько контрактов должно быть в сделке, чтобы при неблагоприятном исходе убыток составил 3000 рублей. То есть, будет стоп 20 пунктов, 70 или 100, количество контрактов для сделки подбирается таким образом, чтобы убыток был 3000 р.
Хочу не отвлекаться на расчеты и автоматизировать этот процесс. Было бы хорошо просто указать в настройках советника-помощника убыток на сделку в валюте депозита и чтобы на графике была панель, куда можно ввести цену стопа. Также на панели должны быть кнопки для покупки или продажи с маркета и лимитником. Соответственно, в настройках также должен указываться размер тейк профита.
То есть, указываем цену стопа, жмем на кнопку для совершения сделки и помощник автоматом считает, какой объем должен быть у сделки, чтобы возможный убыток не превысил 3000 р. и отправляет заявку в рынок.
Такая вот задача. Никто не встречал что-то похожее? Я не нашел.