Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Нашел интересную программу? Опубликуй ее в CodeBase - миллионы трейдеров оценят это!
konstruktor
10
konstruktor 2012.10.23 12:00 

Подскажите, что не так.

Сильно не глумитесь, я только учусь. 

Задумка такая: что бы после убыточной сделки объем увеличивался в N раз.

  RefreshRates();  

  Min_Lot=MarketInfo(Symb,MODE_MINLOT);  
  Free =AccountFreeMargin();  
  One_Lot=MarketInfo(Symb,MODE_MARGINREQUIRED);

free_margin = Free/One_Lot;
Totals = OrdersHistoryTotal();
OrderSelect(Totals, MODE_HISTORY);
HisProfit=OrderProfit();
HisLot=OrderLots();
Tikets=OrderTicket();
Print ("Всего ордеров ", Totals, " Ордер № ", Tikets, " Объем ордера ", HisLot, " Прибыль ", HisProfit);
  Step =MarketInfo(Symb,MODE_LOTSTEP);


  if (free_margin > Min_Lot && HisProfit > 0) 
  Lts =Lot; 
  else
  Lts=HisLot*N;

  if(Lts < Min_Lot) Lts=Min_Lot;  
  if (Lts*One_Lot > Free)  
{
Alert(" Не хватает денег на ", Lts," лотов");
  return;  

 

и вот это всё в тестере работает, а когда ставлю на реал, то везде нули, кроме Totals. 

Разъясните пожалуйста, что я не так сделал. 

Дмитрий
1046
Дмитрий 2012.10.23 13:06  
Про OrderSelect() почитайте и пример какой-нибудь скачайте
konstruktor
10
konstruktor 2012.10.23 18:46  
YOUNGA:
Про OrderSelect() почитайте и пример какой-нибудь скачайте


но почему в тестере работает?
Левитин Сергей В.
5155
Левитин Сергей В. 2012.10.23 20:00  
Konstruktor:


но почему в тестере работает?
Если и работает - уверен неправильно, недолжно и в тестере быть ордера Totals, максимум Totals-1, 10 ордеров это ордера с 0 по 9
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий