Проблема изменения баланса в советнике

 

Подскажите, какими инструментами реализовать в MT4 корректировки баланса?

Допустим, мне нужно раз в месяц при закрытых ордерах увеличивать сумму баланса не некоторую сумму в течении нескольких месяцев с выводом сообщения "Вам нужно произвести инвестирование в размере ... долларов".

Так же хочу внести корректировку в сторону уменьшения баланса на некоторую сумму с выводом сообщения "Вы можете вывести ... долларов".

В самом языке программирования нашёл только функцию чтения этого баланса: AccountBalance()

Неужели изменение баланса не предусмотрено системой?

 
sezon:

Подскажите, какими инструментами реализовать в MT4 корректировки баланса?

Допустим, мне нужно раз в месяц при закрытых ордерах увеличивать сумму баланса не некоторую сумму в течении нескольких месяцев с выводом сообщения "Вам нужно произвести инвестирование в размере ... долларов".

Так же хочу внести корректировку в сторону уменьшения баланса на некоторую сумму с выводом сообщения "Вы можете вывести ... долларов".

В самом языке программирования нашёл только функцию чтения этого баланса: AccountBalance()

Неужели изменение баланса не предусмотрено системой?

что значит какую то сумму?

не совсем понятна Ваша проблема.

Исходя из каких расчетов Вы определяете необходимую сумму инвестирования и возможную сумму для снятия?

 

Ну, допустим, есть в советнике переменная ZP = 5000, что означает текущую зарплату. Вторая переменная, PR=5, обозначает процент инвестирования.

Мне нужно увеличивать баланс каждый раз в начале месяца через советника. Это для того, что бы посмотреть график доходности с работающим инвестированием.

Проблема в функциях MQL, через которые можно управлять балансом.

 

Примерный код:

  int start() 
  {
   Print("Account balance = ",AccountBalance());
   AccountBalance() = AccountBalance()+100;               <--- Так выдаёт ошибку из-за того, что AccountBalance() доступен только на чтение. А мне нужно его изменить.
  }
 
sezon:

Ну, допустим, есть в советнике переменная ZP = 5000, что означает текущую зарплату. Вторая переменная, PR=5, обозначает процент инвестирования.

Мне нужно увеличивать баланс каждый раз в начале месяца через советника. Это для того, что бы посмотреть график доходности с работающим инвестированием.

Проблема в функциях MQL, через которые можно управлять балансом.

не понятно:))

вы можете в советнике проанализировать как Ваш баланс, и так и историю сделок за произвольный период. Соответственно можете и рассчитать доходность.

Таким образом текущий баланс Вы определяете AccountBalance(). Сумму за период вы можете определить через выборку по истории ордеров, где OrderProfit( ) <> 0. Таким образом у Вас будет две переменные

CurBalans отражающий Ваш текущий баланс и CurProfit отражающий Ваш +/-. Исходя из этих цифр как я понимаю Вы уже определяете, толи платить ЗП и сколько. Толи инвестировать.

Кажеться так:))

 
sezon:

Примерный код:


вы не можете изменять баланс:)). Баланс изменяеться путем ввода/вывода реальных Денежных средств.

 
То-есть в советниках не предусмотрена такая возможность даже на демо-счетах?
 

То есть я должен сначала прогнать советник за январь, потом увеличить счёт на некую сумму, затем прогнать советник за февраль и снова изменить счёт ... и т.д.

А если тестировать на большом периоде? И как мне потом склеивать графики доходности за каждый месяц, допустим, в годовую отчётность?

 

так же как и пользоваться "заработанными"...

;)

тестируйтесь на пятерке.

Причина обращения: