[ARCHIVE] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 5. - 페이지 263

 
이제 각 막대에서 배열에 가까운 막대 하나를 입력합니다. 그리고 그렇게 수집하지 않으면 데이터를 수집할 막대를 파악하고 주기를 회전하고 필터링해야 합니다. 그래서 마지막만 남았습니다.
 
gince :

배열에 몇 개의 요소가 있어야 하는지 모르겠습니다. 40과 65가 될 수 있습니다. 한마디로 동적 배열이 필요합니다.

배열의 크기를 조정하려면 ArraySize 를 사용하십시오. 이 스크립트를 만들었습니다.

 int start()
  {
//----
   int start= 3 ;
   int end1= 30 ;
   int end2= 90 ;
   int array[];

     ArrayResize (array, (end1-start) );
     int size1= ArraySize (array);
     ArrayResize (array, (end2-start) );
     int size2= ArraySize (array);

   Comment ( "start=" ,start, ", end1=" ,end1, ", end2=" ,end2, ", size1=" ,size1, ", size2=" ,size2);
//----
   return ( 0 );
  }
주석에는 start=3, end1=30, end2=90, size1= 27 , size2= 87 이라고 나와 있습니다.
 
LeksusMt4 :

좋은 오후입니다. 도와주세요. 로봇은 0.1 로트에서 볼륨을 곱하지만 0.01 로트에서는 곱하지 않습니다.... 무엇을 변경할 수 있습니까?


그리고 침대! SRC ! 코드를 삽입 하려면 !
[Deleted]  
borilunad :

그리고 침대! SRC ! 코드를 붙여넣으려면!


아직도 잘 이해가 안가는데.. 어떻게 해야할지....

 

KimIV https://forum.mql4.com/ru/38949/page6#434255 의 SetTLine() 함수를 사용합니다.   문제는 두 줄(위쪽과 아래쪽)이 필요하지만 작동하지 않는다는 것입니다. 다른 변수로 다른 SetTLine1() 함수를 만들었지만 여전히 작동하지 않았습니다.   그것을 하는 방법?

 datetime d0=StrToTime(TimeToStr( TimeCurrent (), TIME_DATE));
datetime d1= TimeCurrent ()- 24 * 60 * 60 ;
while (TimeDayOfWeek(d1)== 0 || TimeDayOfWeek(d1)== 6 ) d1-= 24 * 60 * 60 ;
d1=StrToTime(TimeToStr(d1, TIME_DATE));
datetime d2=d1- 24 * 60 * 60 ;
while (TimeDayOfWeek(d2)== 0 || TimeDayOfWeek(d2)== 6 ) d2-= 24 * 60 * 60 ;
d2=StrToTime(TimeToStr(d2, TIME_DATE));
int b2=iBarShift( NULL , 0 , d2);     // номер бара начала второго дня
int b1=iBarShift( NULL , 0 , d1);     // номер бара начала первого дня
int b0=iBarShift( NULL , 0 , d0);     // номер бара начала текущего дня
int n2=iLowest( NULL , 0 , MODE_LOW, b2-b1- 1 , b1);
int n1=iLowest( NULL , 0 , MODE_LOW, b1-b0- 1 , b0);
datetime t1=Time[n2];
double    p1=Low[n2];
datetime t2=Time[n1];
double    p2=Low[n1];
SetTLine(Magenta, "" , t1, p1, t2, p2, True, STYLE_SOLID , 3 );   

datetime di0=StrToTime(TimeToStr( TimeCurrent (), TIME_DATE));
datetime di1= TimeCurrent ()- 24 * 60 * 60 ;
while (TimeDayOfWeek(di1)== 0 || TimeDayOfWeek(di1)== 6 ) di1-= 24 * 60 * 60 ;
di1=StrToTime(TimeToStr(di1, TIME_DATE));
datetime di2=di1- 24 * 60 * 60 ;
while (TimeDayOfWeek(di2)== 0 || TimeDayOfWeek(di2)== 6 ) di2-= 24 * 60 * 60 ;
di2=StrToTime(TimeToStr(di2, TIME_DATE));
int bi2=iBarShift( NULL , 0 , di2);     // номер бара начала второго дня
int bi1=iBarShift( NULL , 0 , di1);     // номер бара начала первого дня
int bi0=iBarShift( NULL , 0 , di0);     // номер бара начала текущего дня
int ni2=iHighest( NULL , 0 , MODE_HIGH, bi2-bi1- 1 , bi1);
int ni1=iHighest( NULL , 0 , MODE_HIGH, bi1-bi0- 1 , bi0);
datetime t1i=Time[ni2];
double    p1i=High[ni2];
datetime t2i=Time[ni1];
double    p2i=High[ni1];
SetTLine(..................................................
 

안녕하세요! 오류 극복을 위한 도움말: ERR_INVALID_FUNCTION_PARAMVALUE - 4051 - 잘못된 함수 매개변수 값입니다.

이 잘못된 매개변수를 어떤 식으로든 찾을 수 없습니다.

 //--------------------------------------------------------------- 6 --
   Print ( "Конец  цикла вычисления торговых критериев --------------------------------------------------------------------" );     

       Print ( "Попытка открыть ордер." );     
       if (Opn_B== true )
        {                                       // критерий откр. Buy
         Print ( "Попытка открыть ордер. Buy" );
         RefreshRates();                         // Обновление данных
         SL=Bid - StopLoss* Point ;     // Вычисление SL откр.
         TP=Bid + TakeProfit* Point ;   // Вычисление TP откр.         
         Print ( "Попытка открыть Buy. Ожидание ответа.." );
         MyTicket= OrderSend ( Symbol (),OP_BUY,Lts,Ask, 2 ,SL,TP); //Открытие Buy counter
         if (MyTicket > 0 )                         // Получилось :)
           {
             Print ( "  !!!!!!!!    Открыт ордер Buy " ,MyTicket);
             return ;                             // Выход из start()
           }
           else if (MyTicket < 0 )
           {
            Fun_Erorr= GetLastError ();
             Alert ( "GetLastError OP_BUY " , Fun_Erorr);
            }  
         return ;                                 // Выход из start()
        }
       if (Opn_S== true )               // Открытых орд. нет +
        {                                       // критерий откр. Sell
         Print ( "Попытка открыть ордер. Sell" );
         RefreshRates();                         // Обновление данных
         SL=Ask + StopLoss* Point ;     // Вычисление SL откр.
         TP=Ask - TakeProfit* Point ;   // Вычисление TP откр.
         Print ( "Попытка открыть Sell. Ожидание ответа.." );
         MyTicket= OrderSend ( Symbol (),OP_SELL,Lts,Bid, 2 ,SL,TP); //Открытие Sel ,counter
         if (MyTicket > 0 )                         // Получилось :)
           {
             Print ( "  !!!!!!!!    Открыт ордер Sell " ,MyTicket);
             return ;                             // Выход из start()
           }
           else if (MyTicket < 0 )
           {
            Fun_Erorr= GetLastError ();
             Alert ( "GetLastError OP_SELL" , Fun_Erorr);
            }             
         }
       return ( 0 );
  }
//+------------------------------------------------------------------+

      
 
LeksusMt4 :


아직도 잘 이해가 안가는데.. 어떻게 해야할지....

SRC는 여기:


그리고 코드가 정상이면. 귀하의 경우와 같이 큰 경우 파일을 첨부하십시오.


 
LeksusMt4 :


아직도 잘 이해가 안가는데.. 어떻게 해야할지....


나는 다른 스레드에서 당신에게 대답했습니다! 그리고 족발로 게시물을 삭제하십시오!
 

이제 오류 130 , 왜 내가 이해하지 못하는지. 누구든지 내가 어디에서 틀렸는지 말해 줄 수 있습니까?

   Print ( "Конец  цикла вычисления торговых критериев --------------------------------------------------------------------" );     

       Print ( "Попытка открыть ордер." );     
       if (Opn_B== true )
        {                                       // критерий откр. Buy
         Print ( "Попытка открыть ордер. Buy" );
         RefreshRates();                         // Обновление данных
         SL=Bid - StopLoss* Point ;     // Вычисление SL откр.
         TP=Bid + TakeProfit* Point ;   // Вычисление TP откр.
         Print ( "SL " ,SL, " == Bid " ,Bid, " - StopLoss == " , StopLoss, " * Point ==" , Point );
         Print ( "TP " ,TP, " == Bid " ,Bid, " + TakeProfit == " , TakeProfit, " * Point ==" , Point );         
         Print ( "Попытка открыть Buy. Ожидание ответа.." , "| SL == " , NormalizeDouble (SL, 5 ), "| TP == " , NormalizeDouble (TP, 5 ));
         MyTicket= OrderSend ( Symbol (),OP_BUY, 0.1 ,Ask, 2 , NormalizeDouble (SL, Digits ), NormalizeDouble (TP, Digits )); //Открытие Buy counter
         if (MyTicket > 0 )                         // Получилось :)
           {
             Print ( "  !!!!!!!!    Открыт ордер Buy " , MyTicket);
             return ;                             // Выход из start()
           }
           else if (MyTicket < 0 )
           {
            Fun_Erorr= GetLastError ();
             Alert ( "GetLastError OP_BUY == " , Fun_Erorr);
            }  
         return ;                                 // Выход из start()
        }
       if (Opn_S== true )               // Открытых орд. нет +
        {                                       // критерий откр. Sell
         Print ( "Попытка открыть ордер. Sell" );
         RefreshRates();                         // Обновление данных
         SL=Ask + StopLoss* Point ;     // Вычисление SL откр.
         TP=Ask - TakeProfit* Point ;   // Вычисление TP откр.
         Print ( "SL " ,SL, " == Bid " ,Bid, " + StopLoss == " , StopLoss, " * Point ==" , Point );
         Print ( "TP " ,TP, " == Bid " ,Bid, " - TakeProfit == " , TakeProfit, " * Point ==" , Point );
         Print ( "Попытка открыть Sell. Ожидание ответа.." , "| SL == " , NormalizeDouble (SL, Digits ), "| TP == " , NormalizeDouble (TP, Digits ));
         MyTicket= OrderSend ( Symbol (),OP_SELL, 0.1 ,Bid, 2 , NormalizeDouble (SL, Digits ), NormalizeDouble (TP, Digits )); //Открытие Sel ,counter
         if (MyTicket > 0 )                         // Получилось :)
           {
             Print ( "  !!!!!!!!    Открыт ордер Sell " ,MyTicket);
             return ;                             // Выход из start()
           }
           else if (MyTicket < 0 )
           {
            Fun_Erorr= GetLastError ();
             Alert ( "GetLastError OP_SELL == " , Fun_Erorr);
            }             
         }
 
atwas :
2013년 3월 30일과 31일 양일간 "베팅 승리의 모든 비밀" 컨퍼런스를 개최했습니다. 모두 만족했습니다. 3월 5일 YouTube 채널에 stavkana1000000을 게시합니다. 프로그램: 5. 우연의 일치에 대한 연구. 6. 서열의 식별 . 7. 준비금을 할당하십시오 - 은행. 8. 평균 KEF로 비율을 계산합니다. 검색 엔진에 stavkana1000000을 입력하고 무료로 스포츠(축구) 베팅 전략을 취하십시오. 또는 매주 토요일에 무료로 열리는 온라인 회의 에 참석하십시오. 앤드류 플레이어.

여기요! 어느 카지노에서 떨어졌습니까? 플레이어에게 영원한 금지!