[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 59

 
tpg_k156:
Помогите пожалуйста. Не пойму почему не корректно работает часть кода.

2013.01.08 15:24:21 2012.08.17 21:30 trololo EURUSD,M30: loaded successfully

2013.01.08 15:24:21 2012.08.17 21:30 renkotrend_mart_fixtime_v1 EURUSD,M30: GPG=0 GSR=1.2347 spg=1.2327 ssr=1.2307
2013.01.08 15:24:21 2012.08.17 21:30 renkotrend_mart_fixtime_v1 EURUSD,M30: Открытых ордеров нет1.23470
2013.01.08 15:24:21 2012.08.17 21:30 renkotrend_mart_fixtime_v1 EURUSD,M30: Alert: AHTUNG!!! НЕВЕДОМАЯ ХУЙНЯ!!! ТРЕНД НЕ ОПРЕДЕЛЕН

Как вообще такое возможно? В чем моя ошибка? 

Вот это из логов. Срабатывает в итоге else и alert  Alert: AHTUNG!!! НЕВЕДОМАЯ ХУЙНЯ!!! ТРЕНД НЕ ОПРЕДЕЛЕН
 
TheXpert:
Period Converter
Спасибо. А график автоматически будет обновляться или надо самому все проделывать?
 
tpg_k156:
Вот это из логов. Срабатывает в итоге else и alert  Alert: AHTUNG!!! НЕВЕДОМАЯ ХУЙНЯ!!! ТРЕНД НЕ ОПРЕДЕЛЕН


Если хотите определить

else
      {
      //открытых ордеров нет
      Print("Открытых ордеров нет",GSR,GPG);
      if(GSR>0)//тренд медвежий
         {
         
         price=GSR;
         tprofit=GSR+takeprofit*Point;
         sloss=GSR-stoploss*Point;
         OrdSend(symbol,4,volume,price,slippage,sloss,tprofit,comment,magic,expiration,arrow_color);//устанавливаем OP_BUYSTOP
         }
      else if(GPG>0)//тренд бычий
         {
         
         price=GPG;
         sloss=GPG+stoploss*Point;
         tprofit=GPG-takeprofit*Point;
         OrdSend(symbol,5,volume,price,slippage,sloss,tprofit,comment,magic,expiration,arrow_color);//устанавливаем OP_SELLSTOP
         }
      else
         {
         Alert("AHTUNG!!! НЕВЕДОМАЯ ХУЙНЯ!!! ТРЕНД НЕ ОПРЕДЕЛЕН");
         }
   
      }
 
Vinin:


Если хотите определить

 


Благодарю, эта часть кода стала работать.
 

Появилась еще одна неясность

if(OrdersTotal()>0)//есть ли открытые ордера
      {
      i=OrdersTotal();
      while(i>0)//перебор открытых и отложенных ордеров
         {
         Print("Обработка ордера №",i);
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)//выбираем ордер
            {
            Print("Обработка существующих ордеров");
            
            i--;
            }
         else
            {
            //ордер выбрать не удалось
            
            Print("OrderSelect() вернул ошибку - ",GetLastError());
            }   
         
          }
      
      }
2013.01.08 17:06:48 2012.08.16 14:17 renkotrend_mart_fixtime_v1 EURUSD,M30: ждем новый бар...

2013.01.08 17:06:48 2012.08.16 14:17 renkotrend_mart_fixtime_v1 EURUSD,M30: GPG=0 GSR=1.2288 spg=1.2279 ssr=1.227
2013.01.08 17:07:00 2012.08.16 14:30 renkotrend_mart_fixtime_v1 EURUSD,M30: Обработка ордера №1
2013.01.08 17:07:00 2012.08.16 14:30 renkotrend_mart_fixtime_v1 EURUSD,M30: OrderSelect() вернул ошибку - 0
Из справочника:

ERR_NO_ERROR 0 Нет ошибки
 В чем же теперь моя ошибка ??? Видимо советник мне не создать:(

 
tpg_k156:

Появилась еще одна неясность

2013.01.08 17:06:48 2012.08.16 14:17 renkotrend_mart_fixtime_v1 EURUSD,M30: ждем новый бар...

2013.01.08 17:06:48 2012.08.16 14:17 renkotrend_mart_fixtime_v1 EURUSD,M30: GPG=0 GSR=1.2288 spg=1.2279 ssr=1.227
2013.01.08 17:07:00 2012.08.16 14:30 renkotrend_mart_fixtime_v1 EURUSD,M30: Обработка ордера №1
2013.01.08 17:07:00 2012.08.16 14:30 renkotrend_mart_fixtime_v1 EURUSD,M30: OrderSelect() вернул ошибку - 0
Из справочника:

ERR_NO_ERROR 0 Нет ошибки
 В чем же теперь моя ошибка ??? Видимо советник мне не создать:(


if(OrdersTotal()>0)//есть ли открытые ордера
      {
      i=OrdersTotal()-1;
      while(i>=0)//перебор открытых и отложенных ордеров
         {
         Print("Обработка ордера №",i);
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)//выбираем ордер
            {
            Print("Обработка существующих ордеров");
            
            i--;
            }
         else
            {
            //ордер выбрать не удалось
            
            Print("OrderSelect() вернул ошибку - ",GetLastError());
            }   
         
          }
      
      }
Не спешите
 
Vinin:

Не спешите

отсчет идет с 0 ?  Блин я реально Sloypok или как там щас называют тугодумов. Еще раз Спасибо!
 
Интересную штуку заметил, если стоит много Print то советник работает по другому, ежели их нет совсем. что это за штука такая? А еще показания индикатора получаемая через icustom отличаются от визуального отображения того же индикатора в окне визуализатора.
 

Доброго дня!! С проходящими праздниками всех!! С новым годом и рождеством христовым!  

 

Подскажите!!Я не использовал массивы ранее.  Я хотел бы задать массив в нулевом его элементе- запоминаем тикет один, цена один. В первом элементе массива тикет два, цена два. И т.п.

Как его прописать? В ддвух словах..   Не, я в общем тему помню, я читал про массивы. Просто напишите плис одной строкой, как его задать.

 

А вот часть моего кода, хоть это и лишнее.   extern int Raz=5; 

int start()
  {
//----
    if (!PozyProstavleny){ 
   
           Price= (Ask+Dist*Point) ; TP_BUY=(Price+TP*Point);  SL_BUY= (Price- SL*Point);
           Price_SELL= (Bid-Dist*Point) ;  TP_SELL=Price_SELL-TP*Point;  SL_SELL=Price_SELL+SL*Point; 
           
   for(int Raz1=Raz;Raz1>0;Raz1--){
   
           Sleep(2000); RefreshRates();  for(int A=25;A>=0;A--){if(IsTradeAllowed())break;
if(A==0) Comment(" эксперту не разрешено торговать или поток для выполнения торговых операций занят "); }           
           OrderSend (Symbol( ), OP_BUYSTOP,  Lot ,NormalizeDouble(Price, Digits), 5, NormalizeDouble( SL_BUY,Digits), 
  NormalizeDouble( TP_BUY,Digits), NULL, 450, 0, CLR_NONE);
           Price= (Price+Dist*Point) ; TP_BUY= (Price+TP*Point); SL_BUY= (Price- SL*Point);
           Error=GetLastError();
     if (Error!=0){ string errorcomment = "Ошибка открытия ордера байстоп  "  + " " + Symbol() +  " " + ErrorDescript(Error); 
           Print (errorcomment);}
           
           Sleep(2000); RefreshRates();  for( A=25;A>=0;A--){if(IsTradeAllowed())break;
if(A==0) Comment(" эксперту не разрешено торговать или поток для выполнения торговых операций занят "); }        
           OrderSend (Symbol( ), OP_SELLSTOP,  Lot ,NormalizeDouble(Price_SELL, Digits), 5, NormalizeDouble( SL_SELL,Digits), 
  NormalizeDouble( TP_SELL,Digits), NULL, 450, 0, CLR_NONE);
     Price_SELL= (Price_SELL -Dist*Point) ;TP_SELL=Price_SELL-TP*Point;   SL_SELL=Price_SELL+SL*Point;
            Error=GetLastError();if (Error==0)
            
            {errorcomment = "Ошибка открытия ордера селлстоп  "  + " " + Symbol() +  " " + ErrorDescript(Error); 
        Print (errorcomment);} Print ("for1");PozyProstavleny=1; 
                       }
                       }   
                        
 

2013.01.08 20:31:58 2012.12.03 10:00 renkotrend_mart_fixtime_v1 EURUSD,M30: OrderModify error 1

Как можно понять данную строку?