KimIV의 유용한 기능 - 페이지 112

 

다음 실행 오류에 대한 설명과 처리 권장 사항입니다. 오류 2, 64, 65 및 133에 대한 일반적인 권장 사항 - 모든 거래 시도를 중지해야 합니다. 이 권장 사항을 충족하기 위해 다음 과 같이 헤더(즉, 모든 기능 시작 전)에 정의 하는 gbDisabled 전역 어드바이저 변수를 사용 합니다.

 //------- Глобальные переменные советника -------------------------------------+
bool    gbDisabled   = False;           // Флаг блокировки советника

start() 함수에서 이 변수의 상태를 확인합니다.

 //+----------------------------------------------------------------------------+
//|  expert start function                                                     |
//+----------------------------------------------------------------------------+
void start() {
   if (gbDisabled) {
    Message( "Критическая ошибка! Советник ОСТАНОВЛЕН!" ); return ;
  }
}
 
KimIV :

다음 실행 오류 및 처리 권장 사항입니다. 오류 2, 64, 65 및 133에 대한 일반적인 권장 사항 - 모든 거래 시도를 중지해야 합니다. 이 권장 사항을 충족하기 위해 다음 과 같이 헤더(즉, 모든 기능 시작 전)에 정의 하는 gbDisabled 전역 어드바이저 변수를 사용 합니다.

start() 함수에서 이 변수의 상태를 확인합니다.

감사해요.... )))
 
좋은 오후, 이고르! 함수에서: void TrailingPositions(string sy="", int op=-1, int mn=-1) 컨트롤은 ModifyOrder(sy, -1, pp+TrailingStopSell*p, 0, clModifySell) 함수로 전송되는 반면 f-I ModifyOrder 자체에 4개의 매개변수가 있는데 그 이유는 무엇입니까?
 
Lisi4ka330 :
좋은 오후, 이고르! 함수에서: void TrailingPositions(string sy="", int op=-1, int mn=-1) 컨트롤은 ModifyOrder(sy, -1, pp+TrailingStopSell*p, 0, clModifySell) 함수로 전송되는 반면 f-I ModifyOrder 자체에 4개의 매개변수가 있는데 그 이유는 무엇입니까?

이것은 아마도 어딘가에서 TrailingPositions 함수를 꺼냈기 때문일 것입니다. 제 오랜 조언자 중 한 명에게서 온 것일 수도 있습니다. 내가 퍼블리싱한 그 기능들이 바로 그렇게 되지는 않았다. 그들은 진화를 겪었 습니다.

TrailingPositions 함수에 대한 참조를 제공합니다. 게시된 목록에 없습니다. SimpleTrailing() 을 게시했습니다 .

 
여기: http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=20. 그리고 링크 주셔서 감사합니다, 나는 그것을 본 곳을 오랫동안 기억했지만 결코 찾지 못했습니다)))))
 
알겠습니다... 아마도 당신은 이미 거래 기호의 이름을 ModifyOrder() 함수에 전달하는 매개 변수가 불필요하다는 사실에 이미 주의를 기울였을 것입니다. 이 옵션이 있었는데 제거했습니다 ...
 
예, 알아냈습니다.)))) 첫 번째 전문가 고문도 썼고, 결과적으로 약간의 이익을 얻었습니다.)))))))))))) Igor, 당신의 기능 덕분에 가능했습니다 )))))))))))))))))
 
안녕하세요!!!)))) 피보나치() 함수에 대해 설명해주세요. 어떤 경우에 사용되나요? 어떤 요소를 반환하는지 명확하지 않습니다... 레벨의 가격이 아닙니다...
 

안녕하세요, 주문할 때 외부 변수에 테이크 및 스톱 레벨을 설정할 수 있는 기능이 있습니까?

예를 들어:

extern double sl = 0; // SL для открываемого ордера

extern double tp = 0; // ТР для открываемого ордера

SetOrder("", OP_BUY, ll, Ask, SL(), TP(), 0, 0);
{условие}

SetOrder("", OP_SELL, ll, Bid, SL(), TP(), 0, 0);

{условие}

SetOrder("", OP_BUYSTOP, ll, Ask, SL(), TP(), 0, 0);
{условие}

SetOrder("", OP_SELLSTOP, ll, Bid, SL(), TP(), 0, 0);

{условие}

SetOrder("", OP_BUYLIMIT, ll, Ask, SL(), TP(), 0, 0);
{условие}

SetOrder("", OP_SELLLIMIT, ll, Bid, SL(), TP(), 0, 0);

{условие}


 


여기요!

어떤 이유로 라이브러리가 연결되면 extern 연산자가 작동을 멈춥니다. 즉, 변수가 정의되고 모든 것이 정상적으로 컴파일되며 원칙적으로 어드바이저가 작동하지만 동시에 어드바이저에는 단일 매개변수가 없습니다. 상당히 많은 매개변수가 있음에도 불구하고 유형을 시작합니다. 이유는 무엇입니까?