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

 
WindSW :

인쇄를 통해

이 디자인을 시도

 double xDelH[ 1 ][ 1 ];
double HBar[ 1 ][ 1 ];

int countDH= 0 ;
HBar[countH][ 0 ]= 1.23456 ;

xDelH[countDH][ 0 ]=HBar[countH][ 0 ];

Print ( "HBar=" ,DoubleToStr(HBar[countH][ 0 ], 3 ), "  xDelH=" ,DoubleToStr(xDelH[countDH][ 0 ], 4 ));
// распечатается: HBar=1.234  xDelH=1.2345

모든 것이 어떻게 진행되는지 확인하십시오.

 
Dimka-novitsek :
네 감사합니다!! 이것은 컴퓨터 바로 뒤에서 온 나와 완전히 속은 것입니다!

드미트리! 몇 가지 팁. 코드 우선(차이점을 포착하려고 시도):

 //---- Константы
#define MAGIC 450
//---- Внешние переменные советника
extern int StopLoss   = 25 ;
extern int TakeProfit = 30 ;
//---- Глобальные переменные
double gd_TP, gd_SL;
int init()
{
    gd_TP = TakeProfit * Point ;
    gd_SL = StopLoss * Point ;
}
//---- Здесь какая-то пользовательская функция или start()
     if (Svetsja_1) if (!Svetsja_2) if (!Svetsja_3) if (!Orderbuy)
    {
         //стоп лосс 25 п. профит 30 п;стоп лосс 25 п. тралится по MA 20    
         double ld_TP, ld_SL;
        RefreshRates();
         if (TakeProfit != 0.0 ) ld_TP = NormalizeDouble (Bid + gd_TP);
         if (StopLoss != 0.0 ) ld_SL = NormalizeDouble (Bid - gd_SL);
         int li_Ticket = OrderSend ( Symbol (), OP_BUY, lot, NormalizeDouble (Ask, Digits ), 5 , ld_SL, ld_TP, NULL , MAGIC, 0 , CLR_NONE );
         if (li_Ticket > 0 )
        {  
             Sleep ( 2000 ); RefreshRates(); 
            li_Ticket = OrderSend ( Symbol (), OP_BUY, lot, NormalizeDouble (Ask, Digits ), 5 , ld_SL, ld_TP, NULL , MAGIC, 0 , CLR_NONE );
             if (li_Ticket > 0 ) Orderbuy = 1 ;
             else
            {
                Error = GetLastError ();
                 string errorcomment = "Ошибка открытия ордера OP_BUY" + " " + Symbol () + " " + ErrorDescript (Error); 
                 Print (errorcomment);
            }
        }
    }

달라진 점을 눈치채셨나요? - 목록을 작성하면 조언을 공식화할 것입니다(물론 관심이 있는 경우 제외). ;)

 
매우 감사합니다!!!!!!! 나는 페이지를 새로고침하고 보았다. 동생이 곧 올 테니 나중에 다시 쓰겠습니다.
 
GBPUSD, H1 어드바이저의 오류가 의미하는 바를 알려주세요: 제로 디바이드
 
Frostr :
조언자 GBPUSD, H1의 오류가 무엇인지 알려주십시오: 0 나누기의 의미


0으로 나누기.
 
Frostr :
GBPUSD, H1 고문의 오류가 의미하는 바를 알려주십시오.


특히 테스터에서 다른 차트의 값을 사용하려는 경우. 저것들. 예를 들어 EURUSD에서 어드바이저를 테스트하고 다른 차트의 스레드에서 지표의 데이터를 가져오려고 합니다...
 

내가 이해하지 못하는 것, 캐치가 무엇입니까? 이것은 전에 일어난 적이 없습니다. iCustom() 함수로 표시기 판독값을 호출 하고 결과적으로 고문은 표시기 파일을 열 수 없다고 씁니다.

다음은 내가 사용하고 항상 작동하는 코드입니다.

 #property show_inputs
// ------------- Пользовательские переменные ------------------------
extern string    с 1 = " -------- Rad Has -------------" ;
extern string    IndiRadHas_Name= "Rad_Has" ;
extern int                       MaMetod  = 2 ;
extern int                       MaPeriod = 6 ;
extern int                       MaMetod2  = 3 ;
extern int                       MaPeriod2 = 2 ;

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start(){
   // -------------- Пользовательские переменные -------------------
         string   SMB= Symbol ();

         Alert ( "======================================" );
         // --------------- инициализируем значения индикатора RadHas -----------------------------------
                 double RadHas_0_1= iCustom (SMB, 0 ,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2, 0 , 1 );
                 double RadHas_1_1= iCustom (SMB, 0 ,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2, 1 , 1 );
                 double RadHas_2_1= iCustom (SMB, 0 ,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2, 2 , 1 );
                 double RadHas_3_1= iCustom (SMB, 0 ,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2, 3 , 1 );
                 //RadHas_0_1=NormalizeDouble(RadHas_0_1,Digits);
                 //RadHas_1_1=NormalizeDouble(RadHas_1_1,Digits);
                 //RadHas_2_1=NormalizeDouble(RadHas_2_1,Digits);
                 //RadHas_3_1=NormalizeDouble(RadHas_3_1,Digits);
         Alert ( "RadHas_0_1 = " ,RadHas_0_1);
         Alert ( "RadHas_1_1 = " ,RadHas_1_1);
         Alert ( "RadHas_2_1 = " ,RadHas_2_1);
         Alert ( "RadHas_3_1 = " ,RadHas_3_1);
         Alert ( "============== Скрипт 0 на паре " ,SMB, " ==============" );
return ( 0 );

}
//+------------------------------------------------------------------+
표시기는 포스트에 부착되어 있습니다. 표시 파일이 열리지 않는 이유는 무엇이라고 생각하십니까?
파일:
rads_has.mq4  6 kb
 
터미널 빌드 - 445라고 하는 것을 잊었습니다.
 
drknn :
터미널 빌드 - 445라고 하는 것을 잊었습니다.

설정에서 외부 전문가와의 통화가 허용됩니까?
 
rigonich :

설정에서 외부 전문가와의 통화가 허용됩니까?

저는 7년 동안 외환 프로그래밍을 해왔습니다. 그러한 중대한 실수는 거의 놓칠 수 없습니다. 예, 터미널에서 이 스크립트를 사용하여 표시기 판독값을 호출하려고 합니다.

문제는 1년 전에 내가 이 칠면조를 스크립트로 불렀고 모든 것이 괜찮았다는 것입니다. 그는 그것을 지금과 같은 방식으로 불렀다.