Финстрип за неделю 25.07.16-29.07.16

Гораций (который Квинт, а не друг мой) говорил: «Деньги либо господствуют над своим обладателем, либо служат ему.» Надеюсь, что в нашем случае будет верно второе.

К концу этой недели волатильность пары EURUSD значительно выросла. В четверг после заседания ФРС (ставка не изменилась), евро сделала фигуру вверх, что немного пощекотало нервы, на счете «Реал 8 F4Y 3264492» просадка превышала 10%, не смертельно, но был наготове, поставил индикатор контроля свободной маржи (так как в этом советнике еще не ввел такой контроль). Но все обошлось, хватило небольшого отката для закрытия 6 колен.

В пятницу опять был бросок в верх, который никак не сказался на счета. Все отработало планово. У лидера также было открыто 6 колен (что скажешь, скальперы с мартингейлом работают похоже), которые благополучно закрылись, благодаря чему в эту неделю прибыль возрасла и у него и у меня. Как не пытался я найти другую пару для диверсификации — не получилось. Советники хоть и работают на долгосроке в плюс, но прибыль столь незначительна, что овчинка выделки не стоит.

Подписка на лидера

Итог работы за неделю +770 ¢

Мои счета

Реал 5 F4Y 3186942 (NDD): баланс 2666 (было 2592) средства 2665 (было 2591) +74 ¢.

Реал 6 F4Y 3203033: баланс 12235 (было 12040) средства 12221 (было 12024) +195 ¢.

Реал 8 F4Y 3264492 баланс 10533 (было 10004) средства 10533 (было 9998) +529 ¢.

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

#import "MetaKeeper.dll"
    void SendMessage(string);
#import

input bool AlertLowDeposit = false; //Поднимать тревогу?
input double MinimalFreeMargin=0;//Минимальная свободная маржа
input int MinuteInterval=30;//Интервал в минутах

bool AlreadySendMessageAlert=false; 

int OnInit()
  {
   if (!EventSetTimer(MinuteInterval*60))
   {
   int err= GetLastError();
   Print("Ошибка при инициализации таймера "+IntegerToString(err));
   return INIT_FAILED;
   }

  CheckMoney(Symbol());
   return(INIT_SUCCEEDED);
  }
 
 void OnDeinit(const int reason)
  {
 EventKillTimer();
 Comment(""); 
  }
void OnTimer()
  {
CheckMoney(Symbol());
  }

void CheckMoney(string symbol)
{
bool resBalance=true;
double var= AccountFreeMargin();
Comment("AccountFreeMargin="+DoubleToStr(var));
   if (AlertLowDeposit && var < MinimalFreeMargin) 
   {
     if (!AlreadySendMessageAlert) //уже сообщали что не хватает денег. Не будем долбить постоянно,хотя обычно в терминале это итак можно запретить.
     {
     string txt=StringConcatenate("На счету ",AccountNumber()," : AccountFreeMargin= ",var," меньше допустимого= ",MinimalFreeMargin);
     SendMessage(txt);
     Alert(txt);
     AlreadySendMessageAlert=true;
     }
     
       resBalance=false;
   }

if (resBalance) AlreadySendMessageAlert=false; //если денег стало достаточно то опять сбросим флаг
 
}
Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

Оставить комментарий

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