초보자의 질문 MQL4 MT4 MetaTrader 4 - 페이지 123

 

RVI 표시기에 있는 경우 매수/매도 조건에 값을 추가하는 방법, 예를 들어: 두 선이 교차할 때 매수/매도 주문 이 열리지만 교차점에서뿐만 아니라 교차점이 위에서 발생한 경우에도 필요합니다. 0 값 ?

MM 및 MS는 RVI 표시기 라인입니다.

   if (MM > MS && MoM < MS && MoM < MM)
   {
     OrderSend ( _Symbol , OP_BUY , Lot, Ask , 3 , Ask -SL* Point , Ask +TP* Point , "" , Magic, 0 , Red);
   }
   if (MM < MS && MoM > MS && MoM > MM)
   {
     OrderSend ( _Symbol , OP_SELL , Lot, Bid , 3 , Bid +SL* Point , Bid -TP* Point , "" , Magic, 0 , Red);
   }


 

안녕 친애하는 사람들!

obj 레이블을 통해 64자 이상의 문자열을 표시하는 방법을 알려주세요!?

 
Игорь :

안녕 친애하는 사람들!

obj 레이블을 통해 64자 이상의 문자열을 표시하는 방법을 알려주세요!?

두 개의 obj 레이블이 나란히 있습니다. 왼쪽 정렬 오른쪽, 오른쪽 정렬 왼쪽

 
novichok2018 :

다음 코드 라인을 설명해 주시겠습니까? OrderInfo arrstBuyOrderInfo[MAX_ORDERS_CNT], arrstSellOrderInfo[MAX_ORDERS_CNT]; OrderInfo 에 괄호와 유형이 지정되지 않은 이유는 무엇입니까? 그리고 그것은 모두 글로벌 수준에서 선언되었습니까?

OrderInfo는 데이터 유형입니다. int, double 등과 같은 것입니다. 이 경우 OrderInfo는 구조체입니다. 포지션 마감 기능에 삽입해야 합니까? 어디에? 아니면 배열로 위치를 닫는 기능이 일반적으로 어떻게 든 다르게 보일 수 있습니까? 지금까지는 어렵습니다. 고맙습니다.

지금까지 작업 주문에 대한 정보를 수집하는 첫 번째 작업만 고려했습니다. 트레이딩 시그널의 생성과 트레이딩 액션의 실행은 각각 태스크 2와 태스크 3입니다. 우리는 아직 그들에게 도달하지 못했습니다.

정보 수집의 요점은 "재채기"할 때마다 전체 주문 목록을 다시 살펴볼 필요가 없다는 것입니다. 올바르게 작성된 Expert Advisor에서 이러한 작업은 반복당 한 번만 수행됩니다. 추가 - 생성된 데이터로만 작업하십시오.

Вопросы от начинающих MQL4 MT4 MetaTrader 4
Вопросы от начинающих MQL4 MT4 MetaTrader 4
  • 2018.02.13
  • www.mql5.com
Если у Вас вопросы по MQL4, MT4, MetaTrader 4, пожалуйста пишите в этой теме. Особенно когда вопросы касаются торговых функций...
 
Aleksey Rodionov :

RVI 표시기에 있는 경우 매수/매도 조건에 값을 추가하는 방법, 예를 들어: 두 선이 교차할 때 매수/매도 주문 이 열리지만 교차점에서뿐만 아니라 교차점이 위에서 발생한 경우에도 필요합니다. 0 값 ?

MM 및 MS는 RVI 표시기 라인입니다.


두 줄의 값을 0으로 비교해야 합니다. 그렇지 않습니까?

그리고 MoM이 무엇인지는 분명하지 않습니다.

 

MQL5에 그런 줄이 있습니다. MQL4 컴파일러는 그것을 맹세합니다. 어떻게 다시 쓸 수 있습니까?

 //--- set new color
   m_pixels[y*m_width+x]=(r<< 16 |g<< 8 |b<< 0 | 255 << 24 ) & 0xffffffff ;

//check operator precedence for possible error; use parentheses to clarify precedence   Canvas.mqh
 
Ihor Herasko :

OrderInfo는 데이터 유형입니다. int, double 등과 같은 것입니다. 이 경우 OrderInfo는 구조체입니다. https://www.mql5.com/ru/forum/160587/page121#comment_6556328 게시물에서 선언의 예를 제공했습니다.

귀하의 예를 올바르게 이해하고 있습니까? #define 지시문은 MAX_ORDERS_CNT가 발생할 때마다 숫자 500을 대체합니까? 숫자에 유형이 지정된 이유는 무엇입니까?

그리고 extern int cnt=500으로 설정하지 않는 이유는 무엇입니까? 그리고 OrderInfo가 있을 것입니다 arrstOrderInfo[cnt], arrstBuyOrderInfo[cnt], arrstSellOrderInfo[cnt]; ?


그리고 한 가지 더: 122페이지에 있는 귀하의 게시물에서 그것이 무엇인지 명확하지 않습니다. - & arrstOrderInfo [], & nOrdersCnt 및 .n ? 내 질문이 어리석은 것처럼 보이면 죄송합니다. 그래서 결과가 좋지는 않지만 스스로 더 알아 내려고 노력합니다.

 

안녕하세요

표시기를 업그레이드할 수 있도록 도와주세요.

2개의 버퍼를 추가해야 합니다. 간격이 감지되면 "네이티브" 표시기가 화살표(위 또는 아래)를 그리고 버퍼 6 또는 7에 신호를 보냅니다.

8과 9의 버퍼를 갖고 싶습니다. 간격이 있는 경우 신호가 없는 경우 +1(위) 또는 -1(아래) 0입니다.

표시기 자체가 매우 적절합니다. 직접 하려고 했지만 프로그래밍 기술이 없으면 아무 것도 작동하지 않습니다.

 
novichok2018 :

귀하의 예를 올바르게 이해하고 있습니까? #define 지시문은 MAX_ORDERS_CNT가 발생할 때마다 숫자 500을 대체합니까? 숫자에 유형이 지정된 이유는 무엇입니까?

네. 또한 프로그램 실행 중에는 대체되지 않고 컴파일 단계에서 대체된다는 점에 유의해야 합니다.

그리고 왜 extern int cnt=500 을 설정하지 않습니까? 그리고 OrderInfo가 있을 것입니다 arrstOrderInfo[cnt], arrstBuyOrderInfo[cnt], arrstSellOrderInfo[cnt]; ?

int cnt는 변수 선언이기 때문에 할 수 없습니다. 변수는 프로그램 실행 중에 값을 변경할 수 있습니다. 정적 배열의 메모리는 프로그램 실행 중에 할당되지 않습니다. 메모리 양은 컴파일 시간에 알아야 합니다. 런타임에 배열의 크기를 변경하려면 동적 배열을 사용해야 합니다. 글쎄요, 나중에 정적 배열에 익숙해질 때입니다.

그리고 한 가지 더: 122페이지에 있는 귀하의 게시물에서 그것이 무엇인지 명확하지 않습니다. - & arrstOrderInfo [], & nOrdersCnt 및 .n ? 내 질문이 어리석은 것처럼 보이면 죄송합니다. 그래서 결과가 좋지는 않지만 스스로 더 알아 내려고 노력합니다.

혼동하지 않도록 답변을 조금 단순화하겠습니다. 이 기호(&)는 함수 인수가 함수 실행 중에 값을 변경할 수 있고 다른 값으로 함수가 호출된 위치로 돌아갈 수 있음을 나타냅니다. 이 경우 SaveOrder 함수는 g_arrstBuyOrderInfo 및 g_arrstSellOrderInfo 배열의 내용과 g_nBuyOrdersCnt 및 g_nSellOrdersCnt 변수를 변경할 수 있습니다.

 

안녕 친애하는 사람들!

MT4에서 템플릿을 사용 하지 않고 막대를 다시 칠하는 방법을 알려주세요!?

또는 색 구성표를 적용하는 방법!?