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

 
여기에서 이제 실제 계정 에서 이 코드를 확인했고 모든 것이 정상이며 시장 주문의 모든 것을 수정했지만 보증금 은 건드리지 않았습니다 . 무슨 문제가 있니? 어떻게 생각하나요?
 
Noterday :
이제 실제 계정에서 이 코드를 확인했고 모든 것이 정상이며 시장가 주문에서 모든 것을 수정했지만 예금은 건드리지 않았습니다. 무슨 문제가 있니? 어떻게 생각하나요?


상태에서

         if (cmd==OP_BUY || cmd==OP_SELL)

그리고 조건에서

 if (cmd==OP_BUY)
 
이해하지 못했습니다 :(
 
Noterday :
이해하지 못했습니다 :(

또한 스크립트 이름에는 시장가 주문만... 시장 주문에 대한 이러한 조건을 제거하면 시장 및 보류 중인 주문에 대한 조건이 충족된다는 문구가 있습니다. 그게 전부입니다. 아니요, 전부는 아닙니다. 내용을 주의 깊게 읽으십시오. 요구 사항 및 제한 사항... 그리고 이러한 최소 제한 사항을 보류 중인 주문의 관련 조건에 적용하여 실행되도록 하십시오.
 
KONDOR :


그래서 저는 그러한 라인이 전혀 없으며, 유형을 전혀 선택하지 않습니다. 하지만 보류 중이든 시장용이든 간에 내가 가진 모든 것을 수정합니다.
 
Noterday :
그래서 저는 그런 라인이 전혀 없으며, 유형을 아예 선택하지 않습니다. 하지만 보류 중이든 시장용이든 간에 내가 가진 모든 것을 수정합니다.

나는 당신에게 "FreezeLevel 을 동결하는 거리 에 대한 제한.

StopLoss 또는 TakeProfit 값이 FreezeLevel 매개변수에 대한 요구 사항을 위반하는 경우 시장 주문이 마감되지 않습니다.
StopLoss 또는 TakeProfit 값이 StopLevel 매개변수에 대한 요구 사항을 위반하는 경우 시장 주문의 StopLoss 또는 TakeProfit 수정이 수행되지 않습니다.
선언된 주문 개시 가격이 Freezelevel 매개변수에 대한 요구 사항을 위반하는 경우 보류 중인 주문의 삭제 및 수정이 수행되지 않습니다."
 

모든 것을 알아 냈고 오류는 다음과 같습니다.

 if ( OrdersTotal ()!= 0 )
  {
   
   bool    modify;
   int     Done= 0 ;
   for (i = 1 ; i <= OrdersTotal (); i++)
      {
       if ( OrderSelect (i- 1 ,SELECT_BY_POS,MODE_TRADES) == true)
         {
          Stop = OrderStopLoss();
          Take = OrderTakeProfit();
           Print ( "Пробую модифицировать " ,i, " ордер (#" ,OrderTicket(), ")" );
          modify = OrderModify(OrderTicket(), 0 ,SL,TP, 0 , 0 );                          <<<--------------------- во втором параметре OrderModify нужно ставить не ноль а Orderopenprice()
           if (modify==true) Done++;
           if (modify==false)
            {
             int error = GetLastError ();
             Print ( "                 Неудача... Ошибка " ,error);
             Sleep ( 5000 );
            }
         }
       }
     Alert ( "Модифицировано  " ,Done, "  из  " , OrdersTotal ());
     Sleep ( 10000 );
   }
 
Noterday :
그래서 저는 그런 라인이 전혀 없으며, 유형을 아예 선택하지 않습니다. 하지만 보류 중이든 시장용이든 간에 내가 가진 모든 것을 수정합니다.


또한 이 조건하에서

( cmd==OP_BUYLIMIT || cmd==OP_SELLSTOP)

선택한 주문에 대해 동일한 방식으로 변경(주문 유형을 결정하기 위한 조건을 다음 중 하나로 변경:

끊임없는 설명
OP_BUY 0 매수포지션.
OP_SELL 하나 매도 포지션.
OP_BUYLIMIT 2 구매 한도 보류 위치.
OP_SELLLIMIT 한도 보류 포지션을 매도 하십시오.
OP_BUYSTOP 4 정지 보류 위치를 구매하십시오.
OP_SELLSTOP 5 중지 보류 위치를 판매합니다.
그런 다음에만 하나 또는 다른 선택된 주문의 "거래 작업 수행 시 요구 사항 및 제한 사항"을 준수하는지 확인하십시오. 선택한 주문의 각 유형에는 고유한 요구 사항 및 제한 사항이 있습니다. 여기에서 스크립트는 시장에만 적용됩니다. 유추하여 편집하면 그것이 전부입니다. 모든 정보가 있습니다. 침착하고 세심하게 그리고 체계적으로.

 
예, 모든 것이 원래 올바르게 작성되었으며 위에서 설명한 쓰레기에 오류가 있습니다. 모두에게 감사합니다! =))))
 
테스트 프로세스의 속도를 높일 수 있습니까?