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

 
WindSW :

코드에서 ArrayRange를 사용하여 반복 횟수를 결정하는 것이 더 편리합니다.

그리고 xDelH[countDH][0]=HBar[countH][0]; , 그러면 0이 반환됩니다(HBar[countH][0]은 이미 채워져 있고 고유한 값을 가집니다). 전혀 그렇게 할 수 있습니까?

이 할당 작업 후에 xDelH[countDH][0] 값을 어떻게 확인합니까?
 
마지막 미결제 주문의 TakeProfit 가격을 기억하는 기능을 알려주세요
 
Frostr :
마지막 미결제 주문의 TakeProfit 가격을 기억하는 기능을 알려주세요

정확하게 기억해야 하는 경우 주문을 열 때마다 TakeProfit 값을 변수에 저장하기만 하면 됩니다.
 

난 그냥 뭔가가 필요해

//평균 가격을 계산하여 평균화
이중 평균 가격 = NormalizeDouble (합계/전체 할당량, 자릿수);
// 각 미결 주문에 대해 동일한 이익 실현을 이동하여 시리즈의 모든 주문을 수정합니다.
for ( trade = OrdersTotal() - 1; trade >= 0; trade-- )
{
if ( OrderSelect(trade, SELECT_BY_POS, MODE_TRADES) && OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
{
// BUY 주문에 대해 이익을 얻습니다.
if ( OrderType() == OP_BUY) tp = 평균 가격 + TP * 포인트;
// SELL 주문에 대해 이익을 얻습니다.
if ( OrderType() == OP_SELL) tp = 평균 가격 - TP * 포인트;
// 시리즈에 속하는 순서 수정
OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), NormalizeDouble(tp, Digits), 0, 노란색);
}
}
}

수정된 이전 주문, 새로 개설된 주문의 이익을 취하기 위해 이익 실현을 변경했습니다(가격이 마지막 주문을 스톱으로 마감하면 이전 주문도 모두 마감됨)

 
Frostr :

난 그냥 뭔가가 필요해

//평균 가격을 계산하여 평균화
이중 평균 가격 = NormalizeDouble(합계/전부, 자릿수);
// 각 미결 주문에 대해 동일한 이익 실현을 이동하여 시리즈의 모든 주문을 수정합니다.
for ( trade = OrdersTotal() - 1; trade >= 0; trade-- )
{
if ( OrderSelect(trade, SELECT_BY_POS, MODE_TRADES) && OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
{
// BUY 주문에 대해 이익을 얻습니다.
if ( OrderType() == OP_BUY) tp = 평균 가격 + TP * 포인트;
// SELL 주문에 대해 이익을 얻습니다.
if ( OrderType() == OP_SELL) tp = 평균 가격 - TP * 포인트;
//시리즈에 속한 순서 수정
OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), NormalizeDouble(tp, Digits), 0, 노란색);
}
}
}

수정된 이전 주문, 새로 개설된 주문의 이익을 취하기 위해 이익 실현을 변경했습니다(가격이 마지막 주문을 스톱으로 마감하면 이전 주문도 모두 마감됨)


전체 시리즈에 대해 단일 정지 손실을 설정하면 이전 항목이 닫힙니다. 이것은 이러한 주문에 대한 이익을 유지하거나 가격이 역전될 경우 손실을 줄이는 데 도움이 될 것입니다. 손절매가 각 주문에 대해 다른 경우(변경하지 않음), 하나의 주문만 마감됩니다. 시리즈의 나머지 주문에 대한 이익실현 값은 다시 계산하거나 이전 값과 동일하게 설정해야 합니다.
 
paladin80 :
이 할당 작업 후에 xDelH[countDH][0] 값을 어떻게 확인합니까?

인쇄 를 통해
 

안녕하세요!! 알다시피, 저는 이 곳에서 두 가지 주문을 합니다. 디자인상 하나는 정류장이 있고 다른 하나는 없는 것입니다. 테스터에서 둘다 삭제!!!!

 if    (Svetsja_1 &&  !Svetsja_2  && !Svetsja_3  &&  !Orderbuy ){
     //стоп лосс 25 п. профит 30 п;стоп лосс 25 п. тралится по MA 20    
         
        RefreshRates();
           OrderSend ( Symbol ( ), OP_BUY, lot , NormalizeDouble (Ask, Digits ), 5 , NormalizeDouble ( Ask- ( 25 * Point ), Digits ),   NormalizeDouble ( Ask+( 30 * Point ), Digits ), NULL , 450 , 0 , CLR_NONE );
           int Error= GetLastError (); if (Error== 0 ){  
           Sleep ( 2000 ); RefreshRates(); 
           OrderSend ( Symbol ( ), OP_BUY,  lot , NormalizeDouble (Ask, Digits ), 5 , NormalizeDouble ( Ask- ( 25 * Point ), Digits ),   0 , NULL , 450 , 0 , CLR_NONE ); }
            Error= GetLastError (); Orderbuy= 1 ; 
             if (Error!= 0 ){ string errorcomment = "Ошибка открытия  ордера OP_BUY"   + " " + Symbol () +   " " + ErrorDescript(Error); 
             Print (errorcomment);}   }  } }

여기에서 무슨 일이 일어나고 있는지 잘 이해가 되지 않습니다.


 
Dimka-novitsek :

안녕하세요!! 알다시피, 저는 이 곳에서 두 가지 주문을 합니다. 디자인상 하나는 정류장이 있고 다른 하나는 없는 것입니다. 테스터에서 둘다 삭제!!!!

여기에서 무슨 일이 일어나고 있는지 잘 이해가 되지 않습니다.



자세히 살펴보십시오. 둘 다 손절매를 설정하고 하나만 이익을 얻습니다. 따라서 모든 것이 귀하가 쓴 대로입니다. 둘 다 손절매로 마감되고 하나만이 이익실현으로 마감됩니다.
 
Dimka-novitsek :

안녕하세요!! 알다시피, 저는 이 곳에서 두 가지 주문을 합니다. 디자인상 하나는 정류장이 있고 다른 하나는 없는 것입니다. 테스터에서 둘다 삭제!!!!

여기에서 무슨 일이 일어나고 있는지 잘 이해가 되지 않습니다.

"담배를 피우기"에는 너무 이르다 - 글에 집중하라! :)))
 
네 감사합니다!! 이것은 컴퓨터 바로 뒤에서 온 나와 완전히 속은 것입니다!