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

 

바르마를 확인하고

 //--------------------------------------------------------------- 5 --
// торговые критерии
if (vverh> 0 )
  {
   Opn_B= true ;
   Cls_S= true ;
   Opn_S= false ;
   Cls_B= false ;
  }
if (vverh> 0 )
  {
   Opn_S= true ;
   Cls_B= true ;
   Opn_B= false ;
   Cls_S= false ;
  }
  
//--------------------------------------------------------------- 6 --
용어를 올바르게 썼습니까?
 

주님! 좋은 저녁(밤, 아침, 낮) 여러분!

간단한 질문에 대한 답을 알려주세요.

다음 함수는 주문 개시 가격 을 반환합니다.

- 마지막으로 마감

- 손절매로 마감

도와 주셔서 감사합니다.

 
solnce600 :

주님! 좋은 저녁(밤, 아침, 오후) 여러분!

간단한 질문에 대한 답을 알려주세요.

다음 함수는 주문 개시 가격을 반환합니다.

- 마지막으로 마감

- 손절매로 마감

도와 주셔서 감사합니다.



그런 기능이 없습니다 - 여기에 약간의 코드를 작성해야 합니다
 
artmedia70 :

테스터에서 전략을 확인해야만 변수를 생략할 수 있습니다 .

실제로 이러한 변수의 값은 예를 들어 다시 시작할 때 손실되기 매우 쉽기 때문에 논리를 실행하는 데 필요한 각 값을 적시에 계산해야 합니다 .



Artyom, 예를 들어 줄 수 있습니까? 결국, 함수는 변수를 대체할 수도 있습니다. 함수를 변수로 바꿀 수는 없습니다. :)

 

태양600 :


주님! 좋은 저녁(밤, 아침, 낮) 여러분!

간단한 질문에 대한 답을 알려주세요.

다음 함수는 주문 개시 가격을 반환합니다.

- 마지막으로 마감

- 손절매로 마감

도와 주셔서 감사합니다.



그런 지점 이 있습니다. 흥미로운 것들이 많이 있습니다.

이 함수는 stop으로 마지막 위치를 닫기 위한 플래그를 반환합니다.

 
r772ra :


그런 지점 이 있습니다. 흥미로운 것들이 많이 있습니다.

이 함수는 stop으로 마지막 위치를 닫기 위한 플래그를 반환합니다.

팁을 주셔서 감사합니다.

저는 이 기능만 사용합니다.

스톱으로 주문을 마감한 후 가격으로 시장가 주문의 시작을 인코딩해야 합니다

마지막 stop-closed 주문의 개시.

마지막 정지 마감 주문의 시가를 변수에 저장하려고 했습니다.
 if (isCloseLastPosByStop()==True)                                            //если посл.орд. SELL  закрылся по стопу(стоп данного ордера SELL = 295 п.)

double PrStop = (Bid - 0.0295 );                                              // от цены срабатывания СТОП-ЛОССА вычитаем 295 п. 
                                                                             // и запоминаем это значение,(т.е. цену открытия ордера)в переменной  PrStop         
if (Bid == PrStop )                                                          //если цена Bid будет равна значению PrStop
OrderSend ( Symbol (),OP_BUY, 0.1 ,Ask, 1 ,Bid- 2950 * Point ,Bid+ 150 * Point , "jfh" , 123 ); //открыть ордер.

그러나 가격이 PrStop 값과 같으면 주문이 이루어지지 않습니다.

또한 가격이 PrStop 값보다 낮으면 주문을 시도했습니다.

그러나 명령은 다시 내려지지 않았습니다.

 if (Bid < PrStop ) 

그 이유는 다음 주문이 종료될 때까지 NOT BY STOP-LOSS 때문일 수 있습니다.

isCloseLastPosByStop() ON EVERY TICK 은 True를 반환하고 PrStop 변수는

각 틱에서 새로운 값을 선택하십시오.

나는 Kim의 모든 기능을 주의 깊게 살펴보았지만 이름으로 볼 때 내 문제를 해결하는 데 적합한 기능을 찾지 못한 것 같습니다.

저를 올바른 길로 인도해 주신 모든 분들께 진심으로 감사드립니다.

 

말해주세요! 저는 이제 막 프로그래밍의 첫 걸음을 떼기 시작했습니다.

기능이 얼마나 빨리 실행됩니까? (함수가 2번 호출됨)

- 도서관에서 호출하는 경우

- 외부에 기술된 경우 f. EA에서 직접 start()

- f에 직접 위치한 경우. 시작()

 

solnce600 , Andrey, 당신은 SL이 마감한 마지막 포지션을 손에 넣었습니다! 그리고 기능을 약간 조정하여 원하는 모든 것을 찾는 것을 막는 사람은 누구입니까?

 double GetOOPCloseLastPosByStop( string sy= "" , int op=- 1 , int mn=- 1 ) {
   datetime t; 
   double    ocp, osl, OOP;
   double p = 0 ;
   int     i, j=- 1 , k=OrdersHistoryTotal();
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS, MODE_HISTORY)) {
       if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
         if (op< 0 || OrderType()==op) {
           if (t<OrderCloseTime()) {
            t=OrderCloseTime();
            j=i;
//            p = OrderProfit()+OrderCommission()+OrderSwap();
            OOP = OrderOpenPrice();
  } } } } }
   if ( OrderSelect (j, SELECT_BY_POS, MODE_HISTORY)) {
    ocp= NormalizeDouble (OrderClosePrice(), 5 );
    osl= NormalizeDouble (OrderStopLoss(), 5 );
//    if (ocp==osl) return(p);
     if (ocp==osl) return (OOP);
  }
   return ( 0 );
}
나는 마감으로 이익을 주는 두 줄을 주석 처리하고 이 마감된 위치의 시작 가격을 얻기 위해 두 줄을 추가했습니다. 나는 그것을 테스트하지 않았지만 내가 필요한 것을 대체 할 때 작동하는 방식으로 작동해야합니다! 확인 해봐!
 
borilunad :

solnce600 , Andrey, 당신은 SL이 마감한 마지막 포지션을 손에 넣었습니다! 그리고 기능을 약간 조정하여 원하는 모든 것을 찾는 것을 막는 사람은 누구입니까?

나는 마감으로 이익을 주는 두 줄을 주석 처리하고 이 마감된 위치의 시작 가격을 얻기 위해 두 줄을 추가했습니다. 나는 그것을 테스트하지 않았지만 내가 필요한 것을 대체 할 때 작동하는 방식으로 작동해야합니다! 확인 해봐!

신속한 도움을 주셔서 감사합니다.

저도 아이디어를 주시면 정말 감사하겠습니다.....

내 전략은 매우 간단합니다

.- 양초(iOpen(Symbol(),0,0) 의 시작점부터 가격이 반대 방향 의 짧은 거리(10포인트)보다 더 큰 거리(300포인트) 빠르게 위(아래)로 움직인 경우

- 가격이 돌아서 반대 방향으로 이동한 후, 양초 가격(iOpen(Symbol(), 0,0) 은 각 양초가 열릴 때 시장가 주문을 엽니다.

이 아이디어를 구현하기 위해 가장 먼저 떠오르는 것은

1. 각 양초의 시가에 큰 스탑과 작은 이익이 있는 시장가 주문을 합니다.

2. 이익보다 스톱으로 주문이 더 빨리 마감된 경우 - 스톱으로 마감된 주문의 시가로 시장가 주문을 하십시오.

이 방법을 사용하면 시가에서 나중에 시장가 주문을 해야 하는 양초를 식별할 수 있습니다. 하지만 이를 위해서는 시장가 주문을 해야 합니다.

모든 양초가 열릴 때 큰 스탑과 작은 이익이 있는 주문 .

그리고 나는 실제 거래에서 각 양초가 열릴 때 주문을 할 필요가 없습니다 .

가장 먼저 떠오르는 것은

- 데모 계정 의 각 촛불이 열릴 때 주문을 엽니다. 차트에 한 명의 고문이 첨부됩니다.

- 그리고 실제 계좌에서는 다른 어드바이저가 첨부될 차트에 위의 조건에 따른 주문만 오픈합니다.

하지만 두 계정 과 두 명의 어드바이저 로 거래하는 것도 가장 편리하고 최적의 옵션은 아니라고 생각합니다 .

질문 각 양초가 열릴 때 시장가 주문을 시작하지 않고 포지션을 여는 위의 조건을 어떻게 식별할 수 있습니까?

고맙습니다.

 
solnce600 :

신속한 도움을 주셔서 감사합니다.

저도 아이디어를 주시면 정말 감사하겠습니다.....

내 전략은 매우 간단합니다

.- 양초(iOpen(Symbol(),0,0) 의 시작점부터 가격이 반대 방향 의 짧은 거리(10포인트)보다 더 큰 거리(300포인트) 빠르게 위(아래)로 움직인 경우

- 가격이 돌아서 반대 방향으로 이동한 후, 양초 가격(iOpen(Symbol(), 0,0) 은 각 양초가 열릴 때 시장가 주문을 엽니다.

이 아이디어를 구현하기 위해 가장 먼저 떠오르는 것은

1. 각 양초의 시가에 큰 스탑과 작은 이익이 있는 시장가 주문을 합니다.

2. 이익보다 스톱으로 주문이 더 빨리 마감된 경우 - 스톱으로 마감된 주문의 시가로 시장가 주문을 하십시오.

이 방법을 사용하면 시가에서 나중에 시장가 주문을 해야 하는 양초를 식별할 수 있습니다. 하지만 이를 위해서는 시장가 주문을 해야 합니다.

모든 양초가 열릴 때 큰 스탑과 작은 이익이 있는 주문 .

그리고 나는 실제 거래에서 각 양초가 열릴 때 주문을 할 필요가 없습니다 .

가장 먼저 떠오르는 것은

- 데모 계정 의 각 촛불이 열릴 때 주문을 엽니다. 차트에 한 명의 고문이 첨부됩니다.

- 그리고 실제 계좌에서는 다른 어드바이저가 첨부될 차트에 위의 조건에 따른 주문만 오픈합니다.

하지만 두 계정 과 두 명의 어드바이저 로 거래하는 것도 가장 편리하고 최적의 옵션은 아니라고 생각합니다 .

질문 각 양초가 열릴 때 시장가 주문을 시작하지 않고 포지션을 여는 위의 조건을 어떻게 식별할 수 있습니까?

고맙습니다.

글쎄요, 당신은 이 모든 것을 현실에서 눈치챈 듯이 여기에 쌓였을 것입니다. 의심스럽습니다! 아이디어를 충분히 이해하지 못한 상태에서 먼저 조건의 양초를 추적하여 시도하는 것이 좋습니다. 이러한 조건이 귀하와 일치하면 제로 양초가 열리는 시점부터 원하는 거리에 지연을 설정하고 중지 및 이익을 설정하고 즉시 수정하십시오. 설정 후, 같은 방법으로 마지막 주문의 데이터를 결정하는 Kim의 다른 기능! 신중하게 논리를 구축하고 실험하고 시도해 보세요! 행운을 빕니다!