업데이트된 MQL4 및 이전 코드(문제 해결 경험 교환) - 페이지 2

 

이 기사의 코드도 작동을 멈췄습니다. https://forum.mql4.com/en/3481

즉, C 드라이브에서 파일 쓰기 및 읽기가 없습니다.

 
509개의 빌드가 있습니다. 오늘 편집자가 바뀌는 것을 보았습니다. EA 코드의 많은 부분을 변경해야 했는데 컴파일하는 동안 stdlib.mqh 및 stderror 사용과 관련된 오류가 발생했습니다. 나는 이 파일의 복사본을 /MQL4/Include에 넣었고 EA는 .
 

밤에는 ME가 509일 레알 마드리드에서 열린 포지션 으로 업데이트됐다. Point는 각각 0.0001, Digits는 4! 설명서에 나와 있는 것처럼 급하게 변수를 만들어야 했지만, 5번째 기호에서 StopLoss가 0으로 설정되어 있습니다. 그리고 내가 "양심의 위안"을 위해 사용하는 유일한 지표인 DailyPivotPoints가 떨어졌습니다. 다시 컴파일을 해야 했습니다.

이전에 업데이트된 데모에서 Point 및 Digits는 즉시 정상이었고 DailyPivotPoints는 충돌하지 않았습니다.

 
여기서 무슨 공포를 말하고 있습니까? 개척자 캠프에서와 같이 밤에 말해야합니다)))
 
evillive :
여기서 무슨 공포를 말하고 있습니까? 개척자 캠프에서와 같이 밤에 말해야합니다)))

여기, 0, 0, 그리고 우리는 MT0과 전체 로트에만 올 것입니다. 지금까지는 Documentation에 나와 있는대로 해보았는데, Point 와 Digits 는 아무리 색칠을 해도 4글자처럼 주어집니다.

   double point = MarketInfo ( Symbol (), MODE_POINT );
   int    digits = MarketInfo ( Symbol (), MODE_DIGITS );
데모에서는 모든 것이 물론 비교적 괜찮습니다.
 
borilunad :

여기, 0, 0, 그리고 우리는 MT0과 전체 로트에만 올 것입니다. 지금까지는 Documentation에 나와 있는대로 관리했고, Point와 Digits는 아무리 색칠을 해도 4글자처럼 주어진다.

데모에서는 모든 것이 물론 비교적 괜찮습니다.

인증서를 업데이트했습니까? 나는 올라가서 다음을 발견했습니다. 이전에는 그렇지 않았습니다.

----------------------

int_Digits

_Digits 변수는 현재 차트 기호 가격 측정의 정확도를 결정하는 소수점 이하 소수점 이하 자릿수를 저장합니다.

Digits() 함수를 사용할 수도 있습니다.

----------------------

확인했습니다. Print(_Digits, " ", Digits()); AUDJPY 및 EURUSD는 다음을 제공합니다 .

2014.02.07 18:52:54.313 TestFileOpen EURUSD.e,M30: 5 5
2014.02.07 18:52:33.317 TestFileOpen AUDJPY.e,M15: 3 3

 
VDev :

인증서를 업데이트했습니까? 나는 올라가서 다음을 발견했습니다. 이전에는 그렇지 않았습니다.

----------------------

int_Digits

_Digits 변수는 현재 차트 기호 가격 측정의 정확도를 결정하는 소수점 이하 소수점 이하 자릿수를 저장합니다.

Digits() 함수를 사용할 수도 있습니다.

이것은 아마도 업데이트된 언어로 전환할 때일 수 있지만 전환하지 않고 모든 것이 컴파일됩니다! 그러나 다른 터미널의 동일한 Expert Advisor가 있는 데모에서 Point 및 Digits가 월요일에 정상적인 5자리 값으로 업데이트되었지만 여기 Real에서는 MarketInfo()를 통해 5자리 값을 가져와야 한다는 것이 매우 이상합니다. ((

차트의 주석에서 다음을 확인하십시오.

   "\n\n                                  " , DoubleToStr ( Point , Digits ), //тут выводится 0.0001
   "\n                                  " , DoubleToStr (point, 5 ),   //а тут с переменной 0.00001
물론 SL이 10배나 더 전시했을 때 "무서웠다"! 지금은 정상적으로 작동하기를 바라는 마음으로 이 수표를 보관하고 제거하겠습니다.
 

다른 문제가 있을 것입니다. 이제 시작입니다.)) 이제 컴파일러는 물론 C/C++, MQL5와 같은 일반 언어 에 대한 엄격한 준수가 필요한 것으로 보입니다. 즉, 그러한 넌센스는 더 이상 컴파일되지 않습니다.

 switch (n)
{
case 1 : double d= 1 ; break ;
case 2 : d= 2 ; break ;
}
 
VDev :

다른 문제가 있을 것입니다. 이제 시작입니다.)) 이제 컴파일러는 물론 C/C++, MQL5와 같은 일반 언어에 대한 엄격한 준수가 필요한 것으로 보입니다. 즉, 그러한 넌센스는 더 이상 컴파일되지 않습니다.

난 이것에 손대지 않아! 주요 if...else가 작동하고 주문합니다! True 스위치는 시작 외부의 빌린 기능에 있으며 모든 것이 작동합니다. 아마 월요일에는 쉬고 나면 정상적으로 시작되겠죠?! ;))
 
borilunad :
나는 이것을 귀찮게하지 않습니다! 주요 if...else가 작동하고 주문합니다! True 스위치는 시작 외부의 빌린 기능에 있으며 모든 것이 작동합니다. 아마 월요일에는 쉬고 나면 정상적으로 시작되겠죠?! ;))
오늘 한 시간 동안 이 버전을 시도했는데 잘 모르겠습니다. 친구가 오늘 저를 웃게 했습니다.))) 그는 변수 이름에 점을 넣는 것을 좋아합니다. 나는 오랫동안 그에게 말했습니다 - 그것을 밑줄로 바꾸십시오. 오늘 그는 아무것도 컴파일하지 않았습니다. 그래서 그는 나에게 그 이유를 말해줍니다. 왜냐하면 이제 변수는 클래스가 되어야 하기 때문입니다!
사유: