오류, 버그, 질문 - 페이지 2457 1...245024512452245324542455245624572458245924602461246224632464...3184 새 코멘트 fxsaber 2019.05.09 08:03 #24561 시장에서 사용자가 항상 오류 발생 시 롤백할 수 있도록 이전 버전의 EX5에 (자원을 통해) 투자하도록 제품을 업데이트할 때 연습하는 사람이 있습니까? Vladimir Pastushak 2019.05.09 10:44 #24562 fxsaber : 시장에서 사용자가 항상 오류 발생 시 롤백할 수 있도록 이전 버전의 EX5에 (자원을 통해) 투자하도록 제품을 업데이트할 때 연습하는 사람이 있습니까? 자원없이 할 수 있습니다 ... 문제는 최신 버전이 다른 설정을 가질 수 있다는 것입니다... 다른 설정을 표시하는 것은 이미 문제입니다 ... fxsaber 2019.05.09 11:21 #24563 Vladimir Pastushak : 자원없이 할 수 있습니다 ... 문제는 최신 버전이 다른 설정을 가질 수 있다는 것입니다... 다른 설정을 표시하는 것은 이미 문제입니다 ... 나는 이것에 어떤 문제도 보이지 않는다. Zakhar Chumak 2019.05.09 13:29 #24564 라이브 VPS에서 로그를 요청할 때 "Failed to get terminal logs" 오류가 표시됩니다. 무엇이 문제가 될 수 있는지 누가 알겠습니까? 동시에 VPS의 어드바이저가 작업(오픈/클로즈)을 하지만 로그를 다운로드할 수 없습니다. fxsaber 2019.05.09 13:39 #24565 fxsaber : 나는 이것에 어떤 문제도 보이지 않는다. 이제서야 이전 버전의 EX5에는 보호 메커니즘이 있어야 한다는 것을 깨달았습니다. 그리고 이전 버전의 EX5 리소스를 통해 보호 없이 전송할 수 있으므로 적합하지 않습니다. Uladzimir Izerski 2019.05.09 14:51 #24566 저는 5k에 지표를 쓰고 있습니다. 차트 의 입력 필드 에서 평균의 기간을 강제로 업데이트할 수 없습니다. 4ke에서는 이 디자인이 작동합니다. 뭐가 문제 야? 이해가 안돼? OnChartEvent 를 통해 인터넷의 필드가 업데이트되고 마침표가 없습니다. 어떤 식으로든 바꿀 수 없습니다. 간단한 작업 예제를 첨부합니다. //+------------------------------------------------------------------+ //| Probe_2.mq5 | //| Copyright 2018, MetaQuotes Software Corp. | //| https://mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2018, MetaQuotes Software Corp." #property link "https://mql5.com" #property description "The MA " #property version "1.00" #property indicator_chart_window #property indicator_buffers 1 #property indicator_plots 1 //--- plot MA1 #property indicator_label1 "MA 1" #property indicator_type1 DRAW_LINE #property indicator_color1 clrDarkOrange #property indicator_style1 STYLE_SOLID #property indicator_width1 1 //--- input parameters extern int PBB= 10 ; // период МА //--- indicator buffers double BufferMA1[]; //--- global variables int period_ma1; int period_max; int handle_ma1; string sn,sPBB; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit () { sPBB= IntegerToString (PBB); if ( ObjectFind ( 0 , "P2edit" )!= 0 ) { ObjectCreate ( 0 , "P2edit" , OBJ_EDIT , 0 , 0 , 0 ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_XDISTANCE , 300 ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_YDISTANCE , 1 ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_XSIZE , 70 ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_YSIZE , 40 ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_SELECTABLE , false ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_BGCOLOR , clrBlack ); ObjectSetString ( 0 , "P2edit" , OBJPROP_TEXT ,sPBB); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_FONTSIZE , 16 ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_COLOR , clrGray ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_ALIGN , ALIGN_CENTER ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_READONLY , false ); } //--- set global variables period_ma1= int (PBB< 1 ? 1 : PBB); //--- indicator buffers mapping SetIndexBuffer ( 0 ,BufferMA1, INDICATOR_DATA ); ArraySetAsSeries (BufferMA1, true ); IndicatorSetInteger ( INDICATOR_DIGITS , Digits ()); //--- create handle ResetLastError (); Comment ( "Должна соответствовать зеленой, а равна= " ,PBB); handle_ma1= iMA ( NULL , PERIOD_CURRENT ,period_ma1, 0 , 1 , PRICE_CLOSE ); if (handle_ma1== INVALID_HANDLE ) { Print ( "The iMA(" ,( string )period_ma1, ") object was not created: Error " , GetLastError ()); return INIT_FAILED ; } return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ //| | //| | //+------------------------------------------------------------------+ void OnChartEvent ( const int id, const long &lparam, const double &dparam, const string &sparam) { if (id== CHARTEVENT_OBJECT_ENDEDIT ) { string obj_name=sparam; if (! StringCompare (obj_name, "P2edit" )) { string novPBB= NULL ; if ( ObjectGetString ( 0 ,obj_name, OBJPROP_TEXT , 0 ,novPBB)) { if ( StringCompare (novPBB,sPBB, false )) { PBB= ( int ) StringToInteger (novPBB); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_BGCOLOR , clrBlack ); ObjectSetInteger ( 0 , "P2edit" , OBJPROP_COLOR , clrLime ); } } Print ( "B OnChartEvent PBB=" ,PBB); ChartSetSymbolPeriod ( 0 , _Symbol , _Period ); } } return ; } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate ( const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { // Пробовал от сюда запускать. // sPBB=IntegerToString(PBB); // if(ObjectFind(0,"P2edit")!=0) // { // ObjectCreate(0,"P2edit",OBJ_EDIT,0,0,0); // ObjectSetInteger(0,"P2edit",OBJPROP_XDISTANCE,300); // ObjectSetInteger(0,"P2edit",OBJPROP_YDISTANCE,1); // ObjectSetInteger(0,"P2edit",OBJPROP_XSIZE,70); // ObjectSetInteger(0,"P2edit",OBJPROP_YSIZE,40); // ObjectSetInteger(0,"P2edit",OBJPROP_SELECTABLE,false); // ObjectSetInteger(0,"P2edit",OBJPROP_BGCOLOR,clrBlack); // ObjectSetString (0,"P2edit",OBJPROP_TEXT,sPBB); // ObjectSetInteger(0,"P2edit",OBJPROP_FONTSIZE,16); // ObjectSetInteger(0,"P2edit",OBJPROP_COLOR,clrGray); // ObjectSetInteger(0,"P2edit",OBJPROP_ALIGN,ALIGN_CENTER); // ObjectSetInteger(0,"P2edit",OBJPROP_READONLY,false); // } // // if(PBB==0) PBB=(int)StringToInteger(sPBB); // // if(PBB<5) period_ma1=5; else period_ma1=PBB; // if(PBB>300) period_ma1=300; else period_ma1=PBB; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ ArraySetAsSeries (close, true ); //--- Установка массивов буферов как таймсерий //--- Проверка количества доступных баров if (rates_total< fmax (period_max, 4 )) return 0 ; //--- Проверка и расчёт количества просчитываемых баров int limit=rates_total-prev_calculated; if (limit> 1 ) { limit=rates_total- 2 ; ArrayInitialize (BufferMA1, EMPTY_VALUE ); } //--- Подготовка данных int count=(limit> 0 ? rates_total : 1 ),copied= 0 ; copied= CopyBuffer (handle_ma1, 0 , 0 ,count,BufferMA1); if (copied!=count) return 0 ; //Comment("ошибка = "); //--- возвращаемое значение prev_calculated для следующего вызова return (rates_total); } //+------------------------------------------------------------------+ //| deinit | //+------------------------------------------------------------------+ void OnDeinit ( const int reason) { int i; int obj_total= ObjectsTotal ( 0 , 0 ,- 1 ); for (i=obj_total- 1 ;i>= 0 ;i--) { sn= ObjectName ( 0 ,i, 0 ,- 1 ); if ( ObjectFind ( 0 ,sn)== 0 ) { if ( StringFind (sn, "P2edit" , 0 )== 0 ) ObjectDelete ( 0 ,sn); } } Comment ( "" ); return ; } Slava 2019.05.09 16:05 #24567 Zakhar Chumak : 라이브 VPS에서 로그를 요청할 때 "Failed to get terminal logs" 오류가 표시됩니다. 무엇이 문제가 될 수 있는지 누가 알겠습니까? 동시에 VPS의 어드바이저가 작업(오픈/클로즈)하지만 로그를 다운로드할 수 없습니다. 임시 폴더 경로가 너무 긴 것 같습니다. 아카이브된 로그는 먼저 시스템 임시 폴더의 임시 파일(확장자가 .tmp)로 읽혀집니다. 임시 파일의 이름을 생성하는 동안 오류가 발생했습니다. Vladimir Pastushak 2019.05.09 17:07 #24568 통과 후 에이전트가 잠을 자고 나머지 바쁜 에이전트가 작업을 마칠 때까지 기다린다는 것을 올바르게 이해하고 있습니까? Uladzimir Izerski 2019.05.10 10:54 #24569 뭐라고요? 아무도 내 질문에 대답할 수 없습니다 #24566 ? 재미있게. 이 옵션 을 사용하면 OnCalculate 가 작동합니다. 그러나 이 옵션은 적합하지 않습니다. int OnCalculate ( const int rates_total, const int prev_calculated, const int begin, const double &price[]) Vladimir Pastushak 2019.05.10 11:58 #24570 Uladzimir Izerski : 뭐라고요? 아무도 내 질문에 대답할 수 없습니다 #24566 ? 재미있게. 이 옵션 을 사용하면 OnCalculate 가 작동합니다. 그러나 이 옵션은 적합하지 않습니다. 차트/기간을 변경할 때 입력 필드에 지정한 값에 관계없이 PBB는 값 10을 가져옵니다. 재초기화 시에는 마치 첫 번째 실행인 것처럼 발생합니다. 문제를 해결하는 두 가지 방법이 있습니다 1 - 터미널 전역 변수에 PBB 값을 저장하고 거기에서 기간 가져오기 2 - OnChartEvent 트리거 시 MA 표시기를 다시 초기화하고 새 핸들을 가져옵니다... 1...245024512452245324542455245624572458245924602461246224632464...3184 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
시장에서 사용자가 항상 오류 발생 시 롤백할 수 있도록 이전 버전의 EX5에 (자원을 통해) 투자하도록 제품을 업데이트할 때 연습하는 사람이 있습니까?
자원없이 할 수 있습니다 ...
문제는 최신 버전이 다른 설정을 가질 수 있다는 것입니다...
다른 설정을 표시하는 것은 이미 문제입니다 ...
자원없이 할 수 있습니다 ...
문제는 최신 버전이 다른 설정을 가질 수 있다는 것입니다...
다른 설정을 표시하는 것은 이미 문제입니다 ...
나는 이것에 어떤 문제도 보이지 않는다.
라이브 VPS에서 로그를 요청할 때 "Failed to get terminal logs" 오류가 표시됩니다.
무엇이 문제가 될 수 있는지 누가 알겠습니까? 동시에 VPS의 어드바이저가 작업(오픈/클로즈)을 하지만 로그를 다운로드할 수 없습니다.
나는 이것에 어떤 문제도 보이지 않는다.
이제서야 이전 버전의 EX5에는 보호 메커니즘이 있어야 한다는 것을 깨달았습니다.
그리고 이전 버전의 EX5 리소스를 통해 보호 없이 전송할 수 있으므로 적합하지 않습니다.
저는 5k에 지표를 쓰고 있습니다.
차트 의 입력 필드 에서 평균의 기간을 강제로 업데이트할 수 없습니다. 4ke에서는 이 디자인이 작동합니다.
뭐가 문제 야? 이해가 안돼? OnChartEvent 를 통해 인터넷의 필드가 업데이트되고 마침표가 없습니다. 어떤 식으로든 바꿀 수 없습니다.
간단한 작업 예제를 첨부합니다.
라이브 VPS에서 로그를 요청할 때 "Failed to get terminal logs" 오류가 표시됩니다.
무엇이 문제가 될 수 있는지 누가 알겠습니까? 동시에 VPS의 어드바이저가 작업(오픈/클로즈)하지만 로그를 다운로드할 수 없습니다.
임시 폴더 경로가 너무 긴 것 같습니다.
아카이브된 로그는 먼저 시스템 임시 폴더의 임시 파일(확장자가 .tmp)로 읽혀집니다. 임시 파일의 이름을 생성하는 동안 오류가 발생했습니다.
통과 후 에이전트가 잠을 자고 나머지 바쁜 에이전트가 작업을 마칠 때까지 기다린다는 것을 올바르게 이해하고 있습니까?
뭐라고요?
아무도 내 질문에 대답할 수 없습니다 #24566 ?
재미있게. 이 옵션 을 사용하면 OnCalculate 가 작동합니다. 그러나 이 옵션은 적합하지 않습니다.
뭐라고요?
아무도 내 질문에 대답할 수 없습니다 #24566 ?
재미있게. 이 옵션 을 사용하면 OnCalculate 가 작동합니다. 그러나 이 옵션은 적합하지 않습니다.
차트/기간을 변경할 때 입력 필드에 지정한 값에 관계없이 PBB는 값 10을 가져옵니다.
재초기화 시에는 마치 첫 번째 실행인 것처럼 발생합니다.
문제를 해결하는 두 가지 방법이 있습니다
1 - 터미널 전역 변수에 PBB 값을 저장하고 거기에서 기간 가져오기
2 - OnChartEvent 트리거 시 MA 표시기를 다시 초기화하고 새 핸들을 가져옵니다...