[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 155

 
todem :
추세를 결정하는 데?

일정 기간 동안 추세 변화 에... https://www.mql5.com/ru/forum/131277/page148 및 https://www.mql5.com/ru/forum/131277/page149 참조
 

그러한 티켓이 포함된 주문이 없는데도 OrderSelect 가 TRUE를 반환하는 이유를 알려주세요(삭제됨)?


   if ( OrderSelect (tickethigh1, SELECT_BY_TICKET, MODE_TRADES)==false)
 
100yan :

시간 이 지남 에 따라 트렌드 변화 에 ...


Tp와 Slossa를 설정하는 기능이 여기에서 작동하는지 알려주세요.

if (총 > 0) AveragePrice = NormalizeDouble (AveragePrice / Count, Digits);
if (NewOrdersPlated) {
(cnt = OrdersTotal() - 1; cnt >= 0; cnt--) {
주문 선택(cnt, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber) 계속;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
(주문 유형() == OP_BUY) {
PriceTarget = AveragePrice + TakeProfit * 포인트;
BuyTarget = PriceTarget;
스토퍼 = AveragePrice - 손절매 * 포인트;
플래그 = 참;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (주문유형() == OP_SELL) {
PriceTarget = AveragePrice - TakeProfit * 포인트;
SellTarget = PriceTarget;
스토퍼 = AveragePrice + 손절매 * 포인트;
플래그 = 참;

 
todem :
나는 잘 컴파일했다

죄송합니다. 표시기가 작동합니다. 처음에는 이와 같았지만 오류가 .txt 파일에 있습니다. 컴파일되지 않습니다.

파일:
 

init에서 표시기 버퍼에 대한 계산을 수행하는 것이 불가능합니까?

초기화의 0과 시작의 0을 제외한 모든 막대를 다시 계산하고 싶었습니다.

 
Pyro :

그러한 티켓이 포함된 주문이 없는데도 OrderSelect가 TRUE를 반환하는 이유를 알려주세요(삭제됨)?

기능 설명서는 잘 읽으셨나요?

다시 읽어봅시다:

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

bool 주문 선택 ( 정수 인덱스, 정수 선택, 정수 풀=MODE_TRADES)
이 기능은 추가 작업을 위한 주문을 선택합니다. 함수가 성공적으로 완료되면 TRUE를 반환합니다. 함수 실패 시 FALSE를 반환합니다. 오류에 대한 정보를 얻으려면 GetLastError() 함수를 호출해야 합니다.
티켓 번호로 주문을 선택한 경우 pool 매개변수는 무시됩니다. 티켓 번호는 고유한 주문 식별자입니다. 어떤 목록에서 주문이 선택되었는지 확인하려면 마감 시간 을 분석해야 합니다. 주문 마감 시간이 0이면 주문이 열려 있거나 보류 중이며 터미널의 열린 위치 목록에서 가져옵니다. 주문 유형 으로 미결 주문과 보류 주문을 구별할 수 있습니다. 주문 마감 시간 이 0이 아닌 경우 주문이 마감 되거나 보류 중인 상태로 삭제 되고 터미널 기록에서 선택되었습니다. 또한 주문 유형에 따라 마감된 주문과 삭제된 보류 주문을 구별할 수 있습니다.
옵션:
인덱스 - 두 번째 매개변수에 따라 주문 위치 또는 주문 번호.
고르다 - 선택 모드 플래그입니다. 다음 값 중 하나일 수 있습니다.
SELECT_BY_POS - 인덱스 매개변수에서 목록에 있는 위치의 일련 번호가 전달됩니다.
SELECT_BY_TICKET - 티켓 번호가 인덱스 매개변수에 전달됩니다.
수영장 - 선택할 데이터 소스입니다. 선택 매개변수가 SELECT_BY_POS일 때 사용됩니다. 다음 값 중 하나일 수 있습니다.
MODE_TRADES(기본값) - 주문은 미결 주문과 보류 주문 중에서 선택됩니다.
MODE_HISTORY - 마감된 주문과 삭제된 주문에서 주문이 선택됩니다.


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

이것:

티켓 번호로 주문을 선택한 경우 pool 매개변수는 무시됩니다. 티켓 번호는 고유한 주문 식별자입니다. 어떤 목록에서 주문이 선택되었는지 확인하려면 마감 시간 을 분석해야 합니다 . 주문 마감 시간 이 0 이면 주문이 열려 있거나 보류 중이며 터미널 의 열린 위치 목록 에서 가져옵니다 .

뭐하세요?

 if ( OrderSelect (tickethigh1, SELECT_BY_TICKET, MODE_TRADES )==false)

나는 티켓으로 선택될 때 무시되는 풀 매개변수를 빨간색으로 강조 표시했으며 주문은 터미널 위치의 목록(열림 또는 닫힘)에서 선택됩니다. 그것이 그가 당신에게 진실을 돌려주는 이유입니다. 결국 그런 티켓이 존재하고 주문이 선택되지만 마감된 주문 목록에서...

다음과 같이 필요합니다.

   if ( OrderSelect (tickethigh1,SELECT_BY_TICKET))
   if (OrderOpenTime()== 0 ) {
       // ... код при успешном выборе ордера по тикету в списке рыночных ордеров
   }

... 또는:

 if ( OrderSelect (tickethigh1,SELECT_BY_TICKET))
   if (OrderOpenTime()> 0 ) {
       // ... код при успешном выборе ордера по тикету в списке закрытых ордеров
   }

... 그렇게 또는:

   if ( OrderSelect (tickethigh1,SELECT_BY_TICKET)) {
       if (OrderOpenTime()> 0 ) {
         // ... код при успешном выборе ордера по тикету в списке закрытых ордеров
      }
       if (OrderOpenTime()== 0 ) {
         // ... код при успешном выборе ордера по тикету в списке рыночных ордеров
      }
   }

명확하게 정리한 것 같아요... :)

 

아트미디어70


이렇게 상세하고 포괄적인 답변 감사합니다. 정말 가장 이해하기 쉬운 :) THX!!!

 
Pyro :

아트미디어70


이렇게 상세하고 포괄적인 답변 감사합니다. 가능한 한 명확하게 :) THX!!!

:) 감사해요. 별말씀을요.

나는 그들의 티켓에 따라 열린 자리를 선택하는 "교활함"에 대해 경고하고 싶습니다. 사실은 거래일이 끝날 때 포지션을 다음날로 이전할 때 DC가 주문을 재개한다는 것입니다. 저것들. 현재 위치는 마감되고 다른 위치는 동일한 볼륨으로 열리지만 스왑을 고려하여 새 티켓으로 열립니다. 따라서 고문은 새 티켓을 기억하여 주문 재개를 추적해야 합니다. 그렇지 않으면 모든 것이 "유동"됩니다. 이전 티켓이 있는 주문은 마감된 주문 목록에 있으며 이동한 기존 위치를 선택할 수 없습니다. 이전 티켓을 사용하여 새로운 거래일. 동일한 운명이 부분적으로 닫힌 위치를 기다리고 있습니다. 또한 새 티켓이 할당됩니다.

따라서 고문의 모든 명령에 대한 엄격한 기록을 유지하고 이러한 모든 "교활한" 변경 사항을 시간에 따라 추적하십시오.

 
artmedia70 :


나는 그들의 티켓에 따라 열린 자리를 선택하는 "교활함"에 대해 경고하고 싶습니다. 사실은 거래일이 끝날 때 포지션을 다음날로 이전할 때 DC가 주문을 재개한다는 것입니다.

이것은 일부 DC에서 수행되지만 대다수는 그러한 쓰레기로 고통받지 않습니다.
 
sergeev :
이것은 일부 DC에서 수행되지만 대다수는 그러한 쓰레기로 고통받지 않습니다.

그런 DC의 행동을 고려하는 것이 '좋은 형태'의 법칙이 아닐까요? 결국 ... 예, 중요하지 않습니다 ... 나는 모든 것을 고려하려고 노력합니다. 음 ... 또는 내가 알고있는 것을.

사전 경고는 팔뚝입니다, 그렇죠? ;)