포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 963

 

atztek , 설명의 부정확성에 대해 사과드립니다.

1. MA와 교차하기 전에는 바이-스톱 주문이었고 Ur1 Ur2 Ur3는 가격이 MA와 교차한 후에야 발견되기 때문입니다.

2. 따라서 위에서 언급한 for-loop 검색은 모든 구매 주문 주문 중에서 검색됩니다(3개의 추가 판매 중지 주문이 있고 각 캔들에서 다른 MA를 따라 크롤링하기 때문)

 
vadimvborisov :


atztek , 설명의 부정확성에 대해 사과드립니다.

1. MA와 교차하기 전에는 바이-스톱 주문이었고 Ur1 Ur2 Ur3는 가격이 MA와 교차한 후에야 발견되기 때문입니다.

2. 따라서 위에서 언급한 for-loop는 모든 구매 주문 주문 중에서 검색합니다(3개의 추가 판매 중지 주문이 있고 각 캔들에서 다른 MA를 따라 크롤링하기 때문)

1. 당신은 다음과 같이 말했습니다.
Советник открывает (на основании пересечения с MA ) несколько ( 3 ) рыночных ордеров

스탑 오더는 가격이 교차하는 순간 시장 오더가 됩니다. MA는 그것과 아무 관련이 없습니다.
글쎄, 당신의 고문이 작동하는 방식을 결정하는 것은 당신에게 달려 있습니다.

2. -의 목적은 무엇입니까?
 bool mod_Buy1 = OrderModify ( OrderTicket(???),OrderOpenPrice (), NULL ,Ur1, 0 , clrNONE );
 bool mod_Buy2 = OrderModify ( OrderTicket(???),OrderOpenPrice (), NULL ,Ur2, 0 , clrNONE );
 bool mod_Buy3 = OrderModify (OrderTicket(???),OrderOpenPrice (), NULL ,Ur3, 0 , clrNONE );

저것들. "for"의 각 주기에 대해 동시에 세 개의 주문이 아니라 하나의 주문이 표시됩니다.
 

atztek , 1. 이미 첫 번째 게시물을 수정했습니다.

2. 목적 bool mod_Buy1 = 주문 수정( OrderTicket(열거된 것 중 첫 번째 BUY ), Open Price를 변경하지 않고 Stop Loss를 변경하지 않고 Ur1, 0 , clrNONE 에서 TakeProvit을 가져옴 );

" 즉, "for"의 각 주기에 대해 동시에 3개 모두가 아니라 하나의 주문을 볼 수 있습니다."

이것이 요점입니다. 티켓으로 이 3가지 주문을 처리하고 각각에 대해 적절한 TakeProfit 수준을 설정하는 방법을 알 수 없습니다( Ur1 Ur2 Ur3 ).

 
vadimvborisov :

atztek , 1. 이미 첫 번째 게시물을 수정했습니다.

2. 목적 bool mod_Buy1 = 주문 수정( OrderTicket(열거된 것 중 첫 번째 BUY ), Open Price를 변경하지 않고 Stop Loss를 변경하지 않고 Ur1, 0 , clrNONE 에서 TakeProvit을 가져옴 );

" 즉, "for"의 각 주기에 대해 동시에 3개 모두가 아니라 하나의 주문을 볼 수 있습니다."

이것이 요점입니다. 티켓으로 이 3가지 주문을 처리하고 각각에 대해 적절한 TakeProfit 수준을 설정하는 방법을 알 수 없습니다( Ur1 Ur2 Ur3 ).


1. 내가 당신을 이해하지 못하거나 당신이 무엇을 하고 싶은지 (또는 그것이 어떻게 작동하는지) 모릅니다.
수정 후에도 스탑 오더가 있었고 "MA와 교차 한 후"시장 오더가되었다고 말합니다.
- 시장가 주문을 즉시 개설하거나(예: "MA와 교차한 후"), 가격이 교차할 때 자동으로 시장가 주문이 되는 중지 주문을 엽니다.

2. 나는 이것이 수정의 문제가 아니라 당신의 조언자의 논리의 문제임을 압니다.
(예를 들어 현재 다른 미결 주문이 있습니까? 포지션이 아닌 티켓으로 주문을 선택하는 이유 등)
한 번에 3개의 주문으로 시작하지 말고 하나의 주문으로 간단한 예부터 시작하여 EA가 오류 없이 작동하도록 하십시오. 그런 다음 3개의 주문을 추가하여 복잡하게 만듭니다.
 

1) 네, 맞습니다 - " 오픈 스탑 오더, 가격이 교차하는 순간 자동으로 시장가 주문이 됩니다. "

2) 지정가 주문으로 전환 시 다른 (시장) 주문은 없으며 지정가만 있습니다. 티켓이 아닌 위치별로 선택할 수 있습니다. 상관없습니다. 좋은. Two order의 상황을 생각해보자. 왜냐하면 나는 하나를 가지고 스스로 그것을 알아낼 것이기 때문입니다 ....

 
vadimvborisov :

1) 네, 맞습니다 - " 오픈 스탑 오더, 가격이 교차하는 순간 자동으로 시장가 주문이 됩니다. "

2) 지정가 주문으로 전환 시 다른 (시장) 주문은 없으며 지정가만 있습니다. 티켓이 아닌 위치별로 선택할 수 있습니다. 상관없습니다. 좋은. Two order의 상황을 생각해보자. 왜냐하면 나는 하나를 가지고 스스로 그것을 알아낼 것이기 때문입니다 ....

이미 한계가 있었습니까?
자, 시작하겠습니다. 하나를 이해하면 나머지는 명확해질 것입니다.
 
vadimvborisov :

1) 네, 맞습니다 - " 오픈 스탑 오더, 가격이 교차하는 순간 자동으로 시장가 주문이 됩니다. "

2) 지정가 주문으로 전환 시 다른 (시장) 주문은 없으며 지정가만 있습니다. 티켓이 아닌 위치별로 선택할 수 있습니다 . 상관없습니다. 좋은. Two order의 상황을 생각해 보자. 왜냐하면 나는 하나를 가지고 스스로 그것을 알아낼 것이기 때문입니다 ....

이것이 바로 필요한 것입니다.

 int i, total = OrdersTotal ();
for (i = 0 ; i < total; i++)
{
 if ( OrderSelect (i, SELECT_BY_POS) && OrderType() == OP_BUY)
  {
   bool mod_Buy1 = Модифицировать ордер ( OrderTicket(i-тый BUY из перебранных )
  }
}
 

1. 죄송합니다. 제가 실수를 저질렀습니다. 중지 명령을 의미했습니다.

2. 모든 것이 1과 함께 작동합니다. 그리고 둘 이상은 다룰 수 없습니다 ....

 

안녕, Alexey Vik

bool mod_Buy1 = 주문 수정( OrderTicket(열거에서 i 번째 BUY )

나머지 둘은? 또한?

 ////////////////////////////
 int i, total = OrdersTotal ();
for (i = 0 ; i < total; i++)
{
 if ( OrderSelect (i, SELECT_BY_POS) && OrderType() == OP_BUY)
  {
   bool mod_Buy1 = Модифицировать ордер ( OrderTicket(i-тый BUY из перебранных )
   bool mod_Buy2 = Модифицировать ордер ( OrderTicket(i-тый BUY из перебранных )
   bool mod_Buy3 = Модифицировать ордер ( OrderTicket(i-тый BUY из перебранных )
  }
}
 
vadimvborisov :

안녕, Alexey Vik

bool mod_Buy1 = 주문 수정( OrderTicket(열거에서 i 번째 BUY )

나머지 둘은? 또한?

내 예에서 루프를 확인하십시오. 모든 주문은 루프에서 정렬되고 유형별로 확인됩니다. 여전히 기호와 마법으로 확인해야 하며 귀하의 경우 OrderStopLoss() == 0 또는 OrderTakeProfit() == 0에 따라 손상되지 않습니다. 더 중요한 것은 주문을 불필요하게 수정하려고 시도하지 않고 오류 1을 받지 않기 위해 중단 또는 테이크 없이 포기 명령의 상황이 있을 수 있다는 것입니다.

이 주기에서 주문이 차례로 선택되고 모든 조건이 충족되면 수정을 위해 전송됩니다. 따라서 필요한 모든 주문이 수정됩니다.

두 번째 옵션: 3개의 주문만 제공되는 경우 전역 변수 수준에서 int tick_buy_1, tick_buy_2, tick_buy_3을 선언하고 주문을 열 때 이러한 변수에 티켓을 작성할 수 있습니다. 그런 다음 티켓으로 주문을 선택하고 유형을 확인하고 주문이 마감되었는지 여부를 확인하고 사이클이 없는 경우에만 가능합니다.

   bool mod_Buy1 = Модифицировать ордер ( tick_buy_1 );
   bool mod_Buy2 = Модифицировать ордер ( tick_buy_2 );
   bool mod_Buy3 = Модифицировать ордер ( tick_buy_3 );
사유: