MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1021

 
kashi_ann :

좋은 저녁이에요,


어디선가 "테스트" 고문에 대한 전체 코드가 그려지거나 디코딩된 기사를 보았습니다. 저장하는 걸 깜빡해서 어디에서도 찾을 수 없습니다. 혹시 이 글을 보신 분 계신가요?

거의 모든 기사에는 테스트 EA 코드가 포함되어 있습니다. 당신이 묻는 것을 누군가가 어떻게 알 수 있습니까?

 
ToNy_Nazarov :

안녕하세요!
MT4 Expert Advisor에서 소수점 이하 5자리의 가격으로 작업할 수 있습니까? 그렇다면 어떻게 해야 합니까? 나는 Forex Club을 통해 일합니다.

Digits 기능 은 값 "5"를 제공하며, 예를 들어 Bid 값은 "1.10943"이 아닌 "1.1094"를 제공합니다.
소수점 이하 다섯 번째 자리에서 작동하도록 전체 가격을 얻는 방법은 무엇입니까?

또한 Point 함수는 0.00001이 아닌 0 값을 반환합니다. 왜 이런 일이 일어나고 올바른 값을 얻는 방법은 무엇입니까?

물론 당신은 할 수. 기본.

코드 없음 - 답이 없습니다.

 
숫자에서 한 자릿수를 가져 오는 방법은 무엇입니까? 1.2568이라는 숫자가 있다고 가정해 보겠습니다. 마지막 숫자 "8"을 취하는 방법? DoubleToStr()을 사용하여 문자열로 변환 한 다음 StringSubstr() 을 통해 마지막 숫자를 가져오고 int로 변환하는 변형이 있습니다. 다른 옵션이 있습니까?
 
Yevhenii Levchenko :
숫자에서 한 자릿수를 가져 오는 방법은 무엇입니까? 1.2568이라는 숫자가 있다고 가정해 보겠습니다. 마지막 숫자 "8"을 취하는 방법? DoubleToStr()을 사용하여 문자열로 변환 한 다음 StringSubstr()을 통해 마지막 숫자를 가져와 int로 변환하는 옵션이 있습니다. 다른 옵션이 있습니까?

항상 다른 옵션이 있습니다.

이것이 정규화된 값이면 곱해야 합니다. 이 경우 10000으로 나누거나 0.0001로 나누면 정수 12568을 얻고 나누기의 나머지를 10으로 취합니다.

12568%10=8

 
Alexey Viktorov :

항상 다른 옵션이 있습니다.

이것이 정규화된 값이면 곱해야 합니다. 이 경우 10000으로 나누거나 0.0001로 나누면 정수 12568을 얻고 나누기의 나머지를 10으로 취합니다.

12568%10=8

훌륭한 옵션! 빅터 감사합니다!
 
Yevhenii Levchenko :
훌륭한 옵션! 빅터 감사합니다!

어렸을 때 내 이름은 알렉스였다. 하지만 빅터도 좋아합니다.

 
Artyom Trishkin :

물론 당신은 할 수. 기본.

코드 없음 - 답이 없습니다.


//------------------------------------------------ --------------------
정수 시작()
{
댓글 ("입찰가 = ", 입찰,
"\nAsk = ", 묻고,
"\n포인트 = ", _포인트,
"\nDigits = ", 숫자);
리턴(0);
}
//------------------------------------------------ --------------------
파일:
 
Alexey Viktorov :

어렸을 때 내 이름은 알렉스였다. 하지만 빅터도 좋아합니다.

아차! 문제가 발생했습니다)))

죄송합니다, Alexey)))

 
ToNy_Nazarov :

//------------------------------------------------ --------------------
정수 시작()
{
Comment("입찰가 = ", 입찰가,
"\nAsk = ", 묻고,
"\n포인트 = ", _포인트,
"\nDigits = ", 숫자);
리턴(0);
}
//------------------------------------------------ --------------------

실수를 인쇄하려면 DoubleToString() 함수를 사용하십시오.

Документация по MQL5: Преобразование данных / DoubleToString
Документация по MQL5: Преобразование данных / DoubleToString
  • www.mql5.com
[in]  Формат точности. Если значение digits лежит в диапазоне от 0 до 16, то будет получено строковое представление числа с указанным количество знаков после запятой. Если значение digits лежит в диапазоне от -1 до -16, то...
 
Artyom Trishkin :

실수를 인쇄하려면 DoubleToString() 함수를 사용하십시오.

문제가 완전히 해결되었습니다. 도움 감사합니다!

//------------------------------------------------ --------------------
정수 시작()
{
더블 델타 = 매도호가;
이중 델타2 = 1.10059-_Point;
Comment("입찰가 = ", DoubleToString(입찰, 5),
"\nAsk = ", DoubleToString(Ask,5),
"\n델타 = ", DoubleToString(delta,5),
"\nDelta2 = ", DoubleToString(delta2,5),
"\n포인트 = ", DoubleToString(_Point,5),
"\n숫자 = ", 숫자);
반환(0);
}
//------------------------------------------------ --------------------



파일: