Прикрутить в советник управление капиталом

MQL4 Indicatori Esperti

Specifiche

ПОРТФОЛИО Правильный риск управления капиталом истинного будущего баланса
&
Последовательные победы Используйте управление капиталом

--------- Задача 1. Правильный риск управления капиталом истинного будущего баланса -----

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

Добавить сценарий #include
Минимальное вмешательство в код, желательно инжектор кода
Перехватывать отложенные заказы, обновлять отложенные заказы каждую минуту?

Убедитесь, что отложенные ордера LOT SIZE пересчитаны с новым размером лота в MM

Добавьте сюда параметры

каждая новая сделка вычисляет / пересчитывает все открытые сделки и отложенные ордера всех стратегий, которые стали живыми ордерами открытого рынка:
true_future_balance = текущий баланс - (все свопы + все налоги + все комиссии + все МАКСИМАЛЬНЫЕ определенные СТОП-УБЫТКИ + все скользящие стопы / прибыль + вся маржа + любые другие расходы)

и только потом вычисляет% риска от true_future_balance
так сейчас выглядит ММ, так и оставьте



double sqMMRiskFixedBalancePct(string symbol, int orderType, double price, double sl, double RiskInPercent, int Decimals, double LotsIfNoMM, double MaximumLots) {
   Verbose("Computing Money Management for order -  Risk fixed % of account balance");
   
   symbol = correctSymbol(symbol);
   
   double openPrice = price > 0 ? price : (orderType == OP_BUY ? sqGetAsk(symbol) : sqGetBid(symbol));
   double LotSize=0;

   if(RiskInPercent < 0 ) {
      Verbose("Computing Money Management - Incorrect RiskInPercent size, it must be above 0");
      return(0);
   }
   
   double PointValue = MarketInfo(symbol, MODE_TICKVALUE) / MarketInfo(symbol, MODE_TICKSIZE);    
   double Smallest_Lot = MarketInfo(symbol, MODE_MINLOT);
   double Largest_Lot = MarketInfo(symbol, MODE_MAXLOT);    
   double LotStep = MarketInfo(symbol, MODE_LOTSTEP);

   //Maximum amount of money to risk
   double moneyToRisk = AccountBalance() * RiskInPercent / 100;
                                                                                                                                                              
   //Maximum drawdown of this order if we buy 1 lot
   double oneLotSLDrawdown = PointValue * MathAbs(openPrice - sl);
       
   if(oneLotSLDrawdown > 0) {
      LotSize = roundDown(moneyToRisk / oneLotSLDrawdown, Decimals);
   }
   else {
      LotSize = 0;
   }

   //--- MAXLOT and MINLOT management

   Verbose("Computing Money Management - Smallest_Lot: ", Smallest_Lot, ", Largest_Lot: ", Largest_Lot,", Computed LotSize: ", LotSize);
   Verbose("Max money to risk: ", moneyToRisk, ", SL:", sl, ", One lot drawdown: ", oneLotSLDrawdown, ", Point value: ", PointValue);

   if(LotSize <= 0) {
      Verbose("Calculated LotSize is <= 0. Using LotsIfNoMM value: ", LotsIfNoMM, ")");
            LotSize = LotsIfNoMM;
     }
   
   if(LotSize > MaximumLots) {
      Verbose("LotSize is too big. LotSize set to maximal allowed value (MaximumLots): ", MaximumLots);
      LotSize = MaximumLots;
   }

   //--------------------------------------------

   if (LotSize < Smallest_Lot) {
      Verbose("Calculated LotSize is too small. Minimal allowed lot size from the broker is: ", Smallest_Lot, ". Please, increase your risk or set fixed LotSize.");
      LotSize = 0;
   }
   else if (LotSize > Largest_Lot) {
      Verbose("LotSize is too big. LotSize set to maximal allowed market value: ", Largest_Lot);
      LotSize = Largest_Lot;
   }

   return (LotSize);
}
// Переменные управления капиталом
// + ----------------------------------------------- ------------------- +
extern string smm = "----------- Управление капиталом - процент фиксированного риска -----------";
extern double mmRiskPercent = 5.0;
extern int mmDecimals = 1;
extern int mmStopLossPips = 100;
extern double mmLotsIfNoMM = 1.0;
extern double mmMaxLots = 5.0;









------------------------------ Задача 2. Эксплуатация последовательных побед -------------- ------------
добавить эксплойт с последовательными выигрышами в управление капиталом

Посмотри на этот симулятор пожалуйста
https://mt4-forex-ea.com/online-tools-apps-for-traders/money-management-simulator/index.php#form



добавить к сегменту мм

extern int sequence_winning_trades = 5;
extern логический Reset_risk_after_loss = false;
внешнее целое Win_trade_rise = 30%

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

после того, как sequence_winning_trades> = 5, не увеличивайте размер лота

в случае проигрыша сделайте сброс до исходного размера лота





PORTFOLIO Proper true future balance money management risk
&
Consecutive Wins Exploit money management

 

---------Task 1. Proper true future balance money management risk-----

 

Software generates mql4 strategies, I have to inject proper money management & consecutive wins exploit into it

 

Add #include script

Minimum interference with the code, preferably code injector

Intercept pending orders, update pending orders every minute?

 

Make sure pending orders LOT SIZE is recalculated with new MM lot size

 

Add here params

 

each new trade calculates/recalculates all strategies' open trades and pending orders that became open market live orders:

true_future_balance = current balance – (all swaps+ all taxes+ all commissions + all MAX defined STOP LOSSES + all Trailing Stops/Profits + all margins + any other expense)

 

and only then calculates risk % from true_future_balance

this is how MM currently looks like, keep it that way

// Money Management variables

//+------------------------------------------------------------------+

extern string smm = "----------- Money Management - Risk Fixed % Of Account -----------";

extern double mmRiskPercent = 5.0;

extern int mmDecimals = 1;

extern int mmStopLossPips = 100;

extern double mmLotsIfNoMM = 1.0;

extern double mmMaxLots = 5.0;

 

 

 

 

 

 

 

 

 

------------------------------ Task 2. Consecutive Wins Exploit --------------------------

add consecutive wins exploit to Money Management

 

Look at this simulator please

https://mt4-forex-ea.com/online-tools-apps-for-traders/money-management-simulator/index.php#form

 

 

 

add to mm segment

 

extern int consecutive_winning_trades = 5;

extern Boolean Reset_risk_after_loss = false;

extern integer winning_trade_rise = 30%

 

for example in portfolio there are 5 strategies

script adjusts lot size according to consecutive wins settings of entire portfolio

if winning trade happened then

next lot size = current lot size increased by winning_trade_rise

 

once consecutive_winning_trades >= 5 then do not increase lot size

 

if lost trade then drop to original lot size

 

 


Con risposta

1
Sviluppatore 1
Valutazioni
(49)
Progetti
134
27%
Arbitraggio
62
13% / 53%
In ritardo
58
43%
Gratuito
2
Sviluppatore 2
Valutazioni
(257)
Progetti
419
38%
Arbitraggio
86
44% / 19%
In ritardo
71
17%
Occupato
3
Sviluppatore 3
Valutazioni
(58)
Progetti
76
33%
Arbitraggio
9
78% / 11%
In ritardo
7
9%
Gratuito
Ordini simili
dify indicator MA_Cloud for mt4 and mt5, give source code with comments 1)Need to change alerts and arrows for cross price only true 2 MA without crossing (direction from small to big) 2)Fix the error when change to any timeframe for MA (disapeer) and for arrows (in history is very big on vertically out of see screenshot) 3)Add alerts for crossing of 2 MA (MA Small cross MA big) Arrows, Message, Sound - (True/False)
Изменить графический интерфейс утилиты, исправить расположение кнопок, изменить вид некоторых окон и добавить новые. Сохранить текущую адаптивность и работоспособность кнопок. Подробнее расскажу в ТЗ с наглядными скриншотами, что и где поменять. Правки нужно внести в МТ4 и МТ5 версии. Спасибо за ваши заявки, рассмотрю каждую
Мне нужен робот, который будет иметь следующие необходимые параметры: 1. робот должен работать на MT5 2. минимальный депозит $100 3. количество транзакций в день на депозит $100 с лотом 0,01 минимум 1000 4. макс прасат 15%
написать индикатор распознования флета. выявления флета из трёх частей проверки. в каждой части свой расчёт, по барам, по количеству поинтов, по ширине (высоте) баров, по минимальным значениям... когда все расчеты сошлись и не вышли из пропорций, тогда рисуется флет. Задание готово, отправлю подходящему кандидату. передача оплаты, когда индикатор будет работать без проблем, по всем параметрам расчетов. возможны не
был старый работоспособный скрипт на очень старом МТ4... есть необходимость переписать его на MQL5, чтобы проверить теоретическую работоспособность в современном мире описание вроде бы где-то сохранилось кто-нибудь сможет помочь с этим вопросом и за какие деньги

Informazioni sul progetto

Budget
30 - 40 USD
Per lo sviluppatore
27 - 36 USD
Scadenze
da 1 a 5 giorno(i)