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

 

안녕하세요! 나는 글을 쓸 줄도 모른다. 이것은 내가 잊고 있었던 나만의 기능입니다. 네, 다섯 번째 버전에서도 마찬가지입니다. 누가 설명해줄 수 있나요? 4에 그것을 실현하는 방법?

 double GetLot(   double Riskk,   ENUM_ORDER_TYPE   action ,   string   symbol ,   double   price ,   double    Lott  ){ 

                     double   volume= 1 ,margin= 1 ; 

                       if (use_percent_of_deposit) return   (Lot) ; MqlTick last_tick; SymbolInfoTick ( Symbol (),last_tick);

                                                                                   switch (action)

     {

       case ORDER_TYPE_BUY : price=last_tick.ask ;

       case ORDER_TYPE_SELL : price=last_tick.bid ;

       case ORDER_TYPE_BUY_LIMIT : price=price;

       case ORDER_TYPE_SELL_LIMIT :  price=price;

       case ORDER_TYPE_BUY_STOP :  price=price;

       case ORDER_TYPE_SELL_STOP :  price=price;

       case ORDER_TYPE_BUY_STOP_LIMIT :  price=price;

       case ORDER_TYPE_SELL_STOP_LIMIT :  price=price;}

                     OrderCalcMargin(

         action,           // тип ордера

                  symbol,           // имя символа

                  volume,           // объем

                  price,             // цена открытия

                 margin             // переменная для получения значения маржи

                   ); 

         

         double   Koeffitsyenta= AccountInfoDouble ( ACCOUNT_BALANCE )/ margin ;

         Lott= (Koeffitsyenta*Riskk)/ 100 ;

         double Shag= 1 / SymbolInfoDouble (symbol, SYMBOL_VOLUME_STEP ); 

          Lott= Lott*Shag; Print ( "Lot*Shag  " ,  Lot   );

         Lott= NormalizeDouble (Lot, 0 ); 

          Lott= Lott/Shag;

         double MAX= SymbolInfoDouble (symbol, SYMBOL_VOLUME_MAX );

           double MIN= SymbolInfoDouble (symbol, SYMBOL_VOLUME_MIN );

           if (Lot>MAX) Lot=MAX; if (Lot<MIN) Lot=MIN;

           return (Lot);

                 

                   }
 

코드에서 사용자 지정 표시기 의 값을 계산하는 방법을 알려주십시오. 어떻게 든 작동하지 않습니다.

이중 osma1=iCustom(NULL, 0,"OsMA",12,26,9,0,1);

나는 무엇이 잘못되었는지 알 수 없다

 
코드로 무엇을 하고 있습니까?
 
kwadrad :

코드에서 사용자 지정 표시기의 값을 계산하는 방법을 알려주세요. 어떻게든 작동하지 않습니다.

이중 osma1=iCustom(NULL, 0,"OsMA",12,26,9,0,1);

나는 무엇이 잘못되었는지 알 수 없다


질문에 약간의 정보가 있습니다. 다시 읽으십시오. 그리고 모든 것을 확인하십시오.
 
Roman. :

질문에 약간의 정보가 있습니다. 다시 읽으십시오. 그리고 모든 것을 확인하십시오.


사용자 지정 표시기 "OsMA"의 값을 계산해야 합니다.

나는 코드로 쓴다

 double osma1= iCustom ( NULL , 0 , "OsMA" , 12 , 26 , 9 , 0 , 1 );

이론적으로 이전 양초의 OsMA 값을 반환해야 합니다.

그러나 실생활에서는 잘못된 결과를 반환합니다.

"0"과 같은 버퍼는 표시기 코드로 판단하여 표시기 코드와 동일한 순서로 작성되는 세 개의 매개변수가 있지만 결과는 남습니다.

질문: 오류가 어디에 있는지 알려주십시오.

 
kolospav :
모든 컴퓨터에서 META TRADER 프로그램이 계정에 입력되지만 내 경우에만 작동하지 않습니다. 방화벽도 지웠는데 거기에 문제가 있는 줄 알고 프로그램을 20번이나 재설치했는데... MarketTrayder 프로그램은 문제 없이 잘 작동하고 메타트레이더에서 작업하고 싶습니다!

Ukrtelecom "OGO"(우크라이나) 공급자가 있습니다.
 
kwadrad :


사용자 지정 표시기 "OsMA"의 값을 계산해야 합니다.

나는 코드로 쓴다

이론적으로 이전 양초의 OsMA 값을 반환해야 합니다.

그러나 실생활에서는 잘못된 결과를 반환합니다.

"0"과 같은 버퍼는 표시기 코드로 판단하면 표시기 코드와 동일한 순서로 작성되는 세 개의 매개변수가 있지만 결과가 남습니다.

질문: 실수가 어디 있는지 말해 주세요.


"OsMA"라는 이름은 표준 OsMA 표시기 와 동일합니다. 표준 지표가 아닌 사용자 지정 지표에서 값을 찾으시겠습니까? 사용자 지정 항목의 경우 이름을 변경합니다.
 
paladin80 :
"OsMA"라는 이름은 표준 OsMA 표시기 와 동일합니다. 표준 지표가 아닌 사용자 지정 지표에서 값을 찾으시겠습니까? 사용자 지정 항목의 경우 이름을 변경합니다.


고마워, 난 바보야

MT4에서는 커스텀 인디케이터로 기록되어 있어서 망했습니다.

 

나는 주인이 아니다.

가장 간단한 경우에 6개의 매개변수가 함수에 전달됩니다. 맞죠? 어떤 다른 매개변수가 실행되고 있습니까? 같은 버퍼인가요?

표시기의 이름을 포함하여 모든 작은 것을 확인하십시오.

 
kwadrad :


고마워, 난 바보야

MT4에서는 커스텀 인디케이터로 기록되어 있어서 망했습니다.

아무 반응이 없습니다. EA에서 일반적인 OsMA 값이 필요하면 iOsMA 기능을 사용하면 됩니다.