전문 고문 - 기타 질문 - 페이지 35

 

#sparam - 열기

내 메인 코드에서 이 다른 "spram" 메서드를 잡았습니다.
이제 나는 그 중 하나의 방법을 선택하려고 시도하지만 그 중 하나를 선택하기 위해 고군분투합니다. 심지어 mql4 문서에서 이에 대해 조사했습니다.

Q: 어떤 방법이 옳은지, 그 이유는 무엇인가요?

미리 감사드립니다.

// # 1
if (sparam==button)
{
   // here code
}

// # 2
if (id== CHARTEVENT_OBJECT_CLICK && sparam==button)
{
   // here code
}

// # 3 ( was 2 I just forgot to change )
if (id== CHARTEVENT_OBJECT_CLICK )
{
   if (sparam==button)
    {
     // here code
    }
}
 

# 1은 일반적으로 클릭 이벤트 안에 배치되므로 # 2와 동일하고 다른 # 2와 동일합니다.

 
#sparam - 폐쇄

Marco vd Heijden :

# 1은 일반적으로 클릭 이벤트 안에 배치되므로 # 2와 동일하고 다른 # 2와 동일합니다.

정말 감사합니다.

 

#주문 개체 삭제 / OnTrade() - 열기

최근 2시간 동안 OnTrade() 함수를 연구하는 데 시간을 보냈습니다. 마침내 MT4에서 함수가 작동하지 않는다는 것을 알게 되었습니다. (누군가 말해주세요: 당신은 그것이 작동하는 것이 틀렸습니다)

따라서 가격은 일반적으로(내가 옳다면) 매 틱, 매초, 매분마다 손절매 및 이익실현 수준 에 도달하지 않습니다.
Price가 Stop Loss 및 Take Profit에 도달하면 #Ticket 개체가 삭제할 수 있습니다.
OnTimer() 및 OnTick()에 " My_OrderObjectsDelete() "를 넣을 수 있다는 것을 알고 있습니다. OnTrade()와 같은 기능을 찾으려고 합니다.

" My_OrderObjectsDelete() "를 어디에 둘 수 있는지 조언이 필요합니다.

미리 감사드립니다.

 
나는 당신이 원하는 것을 이해하기가 조금 어렵습니다.

mt4에서 미결 주문이 STP 또는 TGT에 도달하면 주문 내역에서 찾을 수 있습니다. 따라서 OrdersTotal() 에서 더 이상 찾을 수 없으면 OrdersHistoryTotal 목록을 확인하십시오. ().

그러나 STP와 TGT를 다시 추적하고 InTick() 또는 OnTimer()의 어디에 두었는지에 상관없이 이러한 확인이 성공한 경우에만 주문을 확인 하고 입찰가를 확인하면 어떻게 될까요?
 
Carl Schreiber :
나는 당신이 원하는 것을 이해하기가 조금 어렵습니다.
mt4에서 미결 주문이 STP 또는 TGT에 도달하면 주문 내역에서 찾을 수 있습니다. 따라서 OrdersTotal() 에서 더 이상 찾을 수 없으면 OrdersHistoryTotal 목록을 확인하십시오. ().
그러나 STP 및 TGT를 다시 추적하고 InTick() 또는 OnTimer()에 배치한 위치에 관계없이 이러한 확인이 성공한 경우에만 주문을 확인하고 입찰가를 확인하면 어떻게 될까요?

저를 정확히 이해하신 것 같은데요, 댓글 감사합니다.

그러나 내 관심사는 다음과 같습니다. 가격 표시기가 내 손절매 및 이익실현 수준에 도달할 때마다 코드의 해당 부분이 계속 실행되는 것을 원하지 않습니다.

(주문 마감 후 객체를 어떻게 삭제할 수 있는지 이미 알고 있습니다. 이 주석도 확인하세요. - Function Name is " deleteobjs() " - #238 )

 

#Delete Order Objects / OnTrade() - 마감

함수 를 OnTick() 또는 OnTimer()에 넣을 것입니다.

 

#StringLen - 열기

나는 여전히 이 문제에 대해 연구하고 있지만 비슷한 포럼은 할 수 없고 다른 어떤 것도 할 수 없습니다.

자릿수를 세려고 합니다. 아래 코드는 다른 결과를 제공합니다. 도와주세요.

Bid_Len = StringLen ( IntegerToString ( change_to_points( Bid ) ) );

// Results
// EURUSD = 1.23456 > 123456
// NZDUSD = 0.12345 > 12345
미리 감사드립니다.
 
Max Enrik :

#StringLen - 열기

나는 여전히 이 문제에 대해 연구하고 있지만 비슷한 포럼은 할 수 없고 다른 어떤 것도 할 수 없습니다.

자릿수를 세어 봅니다. 아래 코드는 다른 결과를 제공합니다. 도와주세요.

Bid_Len = StringLen ( IntegerToString ( change_to_points( Bid ) ) );

// Results
// EURUSD = 1.23456 > 123456
// NZDUSD = 0.12345 > 12345
미리 감사드립니다.
여기서 하려는 작업에 대해 자세히 설명해 주시겠습니까?
 
honest_knave :
여기서 하려는 작업에 대해 자세히 설명해 주시겠습니까?

귀하의 신속한 답변에 감사드립니다.

아래 이미지는 내가하고 싶은 것을 보여줍니다.

StringLen-1

(그냥 빨리 만들었다)

저를 좀 더 명확하게 이해하시는 데 도움이 되셨으면 합니다.

// 2번째 수정

이것이 더 도움이 되기를 바랍니다.

StringLen - 설명 - 1

사유: