OrderModify() 질문 - 페이지 3

 

사이먼,

이 일을 어떻게 할 것인지 생각하려고 노력하고 있지만 아무 것도 떠오르지 않습니다. 가능한 경로에 대해 MetaEditor에서 사전을 검색하고 있습니다. OrderSymbol() 및 OrderSelect() 함수 를 함께 사용하는 것을 고려하고 있습니다. 힌트를 줄 수 있는 옵션을 제공한다면 당연히 받아들일 것입니다. 힌트는 무엇입니까? ;) 나는 이것을 도전이라기보다 토론이라고 생각합니다. 당신이 이것을 도전이라고 생각한다면, 나는 어떤 힌트에도 동의하지 않을 것입니다. 나는 내 능력을 전적으로 신뢰합니다.

고맙습니다.

 

MarketInfo()를 사용하는 이유는 무엇입니까? 당신에게 무엇을 말할?


이것을 코딩하기 전에 그것을 하는 방법을 알아낸 다음 코드가 아닌 간단한 언어를 사용하여 표현할 수 있어야 합니다.


이 요구 사항을 충족하는 데 필요한 코드에는 코드 기반에 넣은 코드로 수행해야 하는 작업의 여러 측면이 포함되어 있습니다.


지금은 취침 시간입니다. . . 여기 시작하기 위한 힌트가 있습니다. 여러 주문이 있으므로 올바른 주문을 찾으려면 주문을 모두 반복해야 합니다. . . 또는 하나 이상일 수도 있습니다. 가능한 한 많은 옵션을 다룹니다.

방법을 찾을 수 없으면 저에게 알려주십시오. 제가 생각하는 해결책을 찾아 게시하겠습니다. . . 그런 다음 읽고, 이해하고, 찢고, 잘못되었거나 필요하지 않다고 생각하는 부분을 정당화하도록 요청할 수 있습니다.

어느 쪽이든 나는 당신이 그 과정에서 배울 것이라고 확신합니다.

 

사이먼,

Richard Bauer는 내가 이전에 게시한 것의 수정된 버전을 나에게 보냈습니다. 확실히 내 코딩 스타일 선호 사항은 아니지만 인상적이라고 생각합니다. 이 코드가 주문 선택 및 주문 마감을 위해 홍보하는 방법과 관련이 있는지 확인하기 위해 공유할 것이라고 생각했습니다. Richard에게 다시 한 번 감사드립니다. 또한 내가 OrderSymbol()을 시도할 것이라고 생각한 이유는 OrderSend("GBPUSD"...); 또는 모든 통화 쌍. 나는 단순히 주문을 마감하기 위해 비슷한 프로세스를 시도할 수 있다고 생각했습니다. 분명히 주문을 선택하는 작업(주문을 닫기 위해)은 OrderSelect() 함수 내에서 수행됩니다. 이전 게시물에서 올바른 티켓 번호를 찾기 위해 루프를 실행하는 것을 힌트로 언급했습니다(루프가 먼저 실행되고 티켓이 발견되면 먼저 OrderSelect가 포함된 다음 코드 블록으로 드롭다운합니다. () 함수. OrderSelect() 함수 안에는 올바른 티켓 번호를 찾기 위해 루프의 이전 코드 블록에서 사용된 변수 가 있습니다. OrderSelect() 함수는 변수를 사용하여 티켓을 선택합니다. 티켓이 선택되면 다른 모든 것은 매우 간단합니다. 아침에 귀하의 응답을 읽겠습니다.

고맙습니다.

파일:
 
WhooDoo22 :

분명히 주문을 선택하는 작업(주문을 닫기 위해)은 OrderSelect() 함수 내에서 수행됩니다.

OrderTicket(), OrderLots(), OrderClosePrice(), OrderProfit(), OrderType(), OrderTakeProfit(), OrderSymbol(), OrderStopLoss(), OrderOpenTime(), OrderOpenPrice() 함수에 대한 설명서를 모두 읽으십시오. 다음을 명시해야 합니다. 참고: 주문은 OrderSelect() 함수 에 의해 이전에 선택되어야 합니다 .

당신이 통과했기 때문에 OrderClose()에는 이 문이 없습니다.   첫 번째 매개변수로 OrderClose() 에 대한 티켓 번호 . . . 위에 나열된 모든 기능은 그렇지 않으므로 이를 사용하려면 먼저 관심 있는 순서, 즉 OrderSelect() 의 작업을 선택해야 합니다. . . 그런 다음 OrderLots()를 사용하여 위치 크기를 확인하거나 OrderOpenPrice()를 사용하여 공개 가격을 찾을 수 있지만 먼저 선택해야 합니다.


이 개념을 이해하고 이해해야 합니다. . . .

후두22 :

이전 게시물에서 올바른 티켓 번호를 찾기 위해 루프를 실행하는 것을 힌트로 언급했습니다(루프가 먼저 실행되고 티켓이 발견되면 먼저 OrderSelect가 포함된 다음 코드 블록으로 드롭다운합니다. () 함수. OrderSelect() 함수 내부에는 루프의 이전 코드 블록에서 올바른 티켓 번호를 찾기 위해 사용된 변수 가 있습니다.

루프 내부에서 올바른 티켓 번호를 어떻게 찾을 수 있습니까? 어떤 티켓 번호가 올바른지 모릅니다. . 어떤 정보를 사용할 수 있습니까?
 

사이먼,

OrderTicket(), OrderLots(), OrderClosePrice(), OrderProfit(), OrderType(), OrderTakeProfit(), OrderSymbol(), OrderStopLoss(), OrderOpenTime(), OrderOpenPrice() 함수는 이전에 OrderSelect 에 의해 선택되어야 합니다. () 함수 .

OrderClose() 함수가 티켓 번호를 첫 번째 매개변수로 전달하기 때문에 OrderClose() 함수는 OrderSelect() 함수에 의해 이전에 선택될 필요가 없습니다.

OrderSelect()의 목적은 주문을 선택하는 것입니다.

개념이 이해되면 문서를 검토하겠습니다.

어떻게 찾을 것인가..

RE: 아직 작업 중입니다.

고맙습니다

 

사이먼,

"티켓 번호"를 계속 지적하고있는 것 같습니다. 나는 이것을 이해한다. 하지만 여기에서 내가 알고 있는 것은 OrderSelect() 함수 를 사용하여 티켓을 분리하는 두 가지 방법뿐입니다. 특정 티켓 번호 변수가 없는 "주문 풀" 방식을 사용하거나 특정 티켓 변수 이름 "ticket", "bababab22", "lambchops" 등을 사용할 수 있는 다른 방법을 사용할 수 있습니다. 티켓을 분리합니다. "주문 풀" 방식을 사용하는 것이 가장 실용적이라고 생각하므로 이 방식으로 이 기능을 사용하는 것을 고려하고 있습니다. 좋아요.


또한 Robert의 개정판을 훑어보고 그가 주문을 마감했을 때 그는 단순히 OrderSelect() 함수(주문 풀에서 선택하는 기능)를 사용했으며 명백한 신호 마감 외에 사용된 유일한 "if" 조건이 많은 것을 알았습니다. 크기 및 주문이 구매/판매인 경우. 그거였다. 나는 그것을 좋아하지만 이것은 현재 작업이 아닙니다. 이 작업에서 같은 것을 입력할 수는 있지만 아무것도 배울 수 없습니다. 현재 어려운 점은 당신이 가르치고자 하는 것이 무엇인지도 모르는데 어떻게 당신이 가르치고자 하는 것을 배울 수 있는가 하는 것입니다. 나는 당신이 당신의 생각을 더 직접적으로 말할 수 있다면, 당신이 공유하고 싶은 것이 무엇인지 더 빨리 이해할 수 있다고 믿습니다. 더 이해하도록 노력하겠습니다.

고맙습니다.

 
WhooDoo22 :

사이먼,

계속 "티켓 번호"를 가리키고 있는 것 같습니다. 나는 이것을 이해한다. 하지만 여기에서 내가 알고 있는 것은 OrderSelect() 함수를 사용하여 티켓을 분리하는 두 가지 방법뿐입니다. 특정 티켓 번호 변수가 없는 "주문 풀" 방식을 사용하거나 특정 티켓 변수 이름 "ticket", "bababab22", "lambchops" 등을 사용할 수 있는 다른 방법을 사용할 수 있습니다. 티켓을 분리합니다. "주문 풀" 방식을 사용하는 것이 가장 실용적이라고 생각하므로 이 방식으로 이 기능을 사용하는 것을 고려하고 있습니다. 좋아요.

이 경우 주문이 수동으로 이루어지기 때문에 티켓 번호를 변수에 저장할 수 없으므로 코드는 티켓 번호를 발견할 때까지 티켓 번호를 알지 못하므로 루프와 OrderSelect()를 사용하는 첫 번째 옵션만 사용할 수 있습니다.

티켓 번호를 저장하는 것은 큰 불편이며 꼭 해야 하는 경우가 아니면 피해야 합니다. 즉, 피할 방법이 없습니다. . . 왜요 ? 코드는 MT4 재시작에서 복구할 수 있어야 하므로 티켓에 대한 정보를 파일에 저장하고 이상적으로는 추가 백업 커버를 위해 두 번째 PC에 파일을 복사해야 합니다. 그런 다음 코드가 다시 시작되면 파일을 읽고 티켓 번호를 가져와서 중단된 부분부터 다시 시작해야 합니다. . . 이러한 종류의 복잡성은 대부분의 사람들에게 필요하지 않지만 종종 티켓 번호를 저장하는 것이 더 간단한 옵션이라고 생각합니다. . . 그리고 그들은 정보를 파일 등에 저장할 필요가 없습니다. . . 그런 다음 모든 것이 잘못되었을 때 그들이 갖고 싶어합니다.

알겠습니다. 요구 사항을 충족하도록 코드 버전을 코딩했으며 여러 USDJPY 주문을 감지하고 모든 USD JPY 주문을 수정 및 마감하기 위해 몇 가지 검사를 추가했습니다. . . 다음은 최종 버전이 어떻게 진행되었는지 보여주는 몇 가지 화면 캡처입니다.


내가 수동으로 주문한 것. . .

모든 주문

USDJPYi는 내 코드를 수정하고(TP 및 SL에 주의) 닫은 주문과 티켓 번호를 주문합니다. 또한 매수 및 매도 주문의 혼합에 주목하십시오.

마감된 USDJPYi 주문

나머지 주문 . . .

남은 주문

 

사이먼,

이 경우 티켓 번호를 변수에 저장할 수 없습니다...

RE: 그래서 이 예의 "주문 풀" 경로를 사용하는 것입니까? 맞습니까?

 // order pool example

if ( OrderSelect ( 0 ,SELECT_BY_POS,MODE_TRADES)){

티켓번호 저장은 큰 불편...

RE: 동의합니다.

티켓에 대한 정보를 파일에 저장하고 이상적으로는 추가 백업 커버를 위해 두 번째 PC에 파일 복사...

RE: 예, 하지만 티켓에 대한 정보를 파일에 저장하는 것은 현재 제 상황에 대한 별도의 코드 블록 그룹입니다. 기본 사항이 작성될 때까지 코딩을 시작하지 않을 것입니다.

내 요구 사항에 맞게 코드 버전을 코딩했습니다...

RE: 네, 알 수 있습니다. 그것은 잘 보인다. :)


이 작업을 완료한 후 2권에서 계속하겠습니다. 그것은 스스로 쓰지 않을 것입니다. ;)

고맙습니다.

 
WhooDoo22 :

사이먼,

이 경우 티켓 번호를 변수에 저장할 수 없습니다...

RE: 그래서 이 예의 "주문 풀" 경로를 사용하는 것입니까? 맞습니까?


다른 옵션이 있습니까?
 

사이먼,

아뇨, 제가 아는 것은 아닙니다. 두 가지 옵션만 있는 것으로 보이며 이 옵션은 2권에 가장 적합합니다. 또한 덜 복잡해 보이고 나는 조금 신경쓰지 않습니다. ;)

따라서 이 작업으로 돌아가서 usdjpy pair 에서 주문을 선택하기 위해 order pool 방법을 사용했다는 것을 이해하지만 usdjpy 에서 주문을 분리하기 위해 어떤 조건을 사용했습니까?

고맙습니다.

사유: