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

 
FelixFX :

고맙습니다

컴파일 중 발견된 많은 오류
 
RoniIron :

죄송합니다...... 마틴게일 고문님, 손절매를 설정할 수 있습니다. 그렇지 않으면 불가능합니다. 고맙습니다.

OrderSend() 함수 에는 매개변수 중 하나인 손절매가 있습니다. 그리고 그녀는 순서를 정하는 사람입니다. 따라서 필요한 주문에 대한 중지 수준을 계산하고 함수에 입력합니다.
 
FelixFX :

컴파일 중 발견된 많은 오류

글쎄요, 그렇게 될 것입니다 - 나는 거기에 내 서브루틴이 관련되어 있다고 경고했습니다! 그것들을 제거하고 GetLastError() 요청으로 그 자리에 당신의 지문을 쓰십시오
 
drknn :

글쎄요, 그렇게 될 것입니다 - 나는 거기에 내 서브루틴이 관련되어 있다고 경고했습니다! 그것들을 제거하고 GetLastError() 요청으로 그 자리에 인쇄물을 넣으십시오.

이것은 당신이 mql에 정통하다면 쉽게 할 수 있습니다. ) 나는 배우는 중이므로 불필요한 것은 모두 제거하고 필요한 것만 남겨 두는 것은 다소 어렵습니다.
 
// =================================================================================================
// ************************* Трейлинг рыночных ордеров *********************************************
// =================================================================================================


// =================  TrailingRyn() =============================================================
// функция осуществляет трейлинг рыночных ордеров 
// ----------------------------------------------
void TrailingRyn_b(int ryn_TrStop, int ryn_TrStep, int Proskalz, int MAGIC, bool WaitProfit,  bool UseTrailingSound) {
  string SMB=Symbol(); 
  int i;
  int MinLevel=MarketInfo(SMB,MODE_STOPLEVEL);//Минимально допустимый уровень стоп-лосса/тейк-профита в пунктах   
  int SchBuy=SchBuy(MAGIC);
  int SchSell=SchSell(MAGIC);
  if(ryn_TrStop>=MinLevel && ryn_TrStep>0 && (SchBuy>0 || SchSell>0)){    
    for (i=OrdersTotal()-1;i>=0;i--){
      if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {Print("Ошибка № ",GetLastError()," при выборе ордер № ",i);}
      else {
        if (OrderSymbol()==SMB && OrderMagicNumber()==MAGIC){
          TrailingPositions_b(ryn_TrStop,ryn_TrStep,Proskalz,WaitProfit,UseTrailingSound);
        }
      }
    }
  }
 if(ryn_TrStop>=MinLevel && ryn_TrStep==0)
 Print("Трейлинг невозможен - ryn_TrStep==0");
} 
// =================================================================================================

//+------------------------------------------------------------------+
//| Сопровождение позиции простым тралом                             |
//+------------------------------------------------------------------+
void TrailingPositions_b(int ryn_TrStop, int ryn_TrStep, int Proskalz, bool WaitProfit, bool UseTrailingSound){
  if(OrderType()==OP_BUY){
    if(!WaitProfit || (Bid-OrderOpenPrice())>ryn_TrStop*Point){
      if (OrderStopLoss()<Bid-(ryn_TrStop+ryn_TrStep-1)*Point){
        ModifyStopLoss_b(Bid-ryn_TrStop*Point,UseTrailingSound);
      }
    }
  }
  if(OrderType()==OP_SELL){
    if(!WaitProfit || OrderOpenPrice()-Ask>ryn_TrStop*Point) {
      if(OrderStopLoss()>Ask+(ryn_TrStop+ryn_TrStep-1)*Point || OrderStopLoss()==0){
        ModifyStopLoss_b(Ask+ryn_TrStop*Point,UseTrailingSound);
      }
    }
  }
}

//+------------------------------------------------------------------+
//| Перенос уровня StopLoss                                          |
//| Параметры:                                                       |
//|   ldStopLoss - уровень StopLoss                                  |
//+------------------------------------------------------------------+
void ModifyStopLoss_b(double ldStopLoss, bool UseTrailingSound){
  bool fm=false;
  string NameTrallingSound  = "ok.wav";// Наименование звукового файла для трейлинга
  fm=OrderModify(OrderTicket(),OrderOpenPrice(),ldStopLoss,OrderTakeProfit(),0,CLR_NONE);
  if(fm!=0 && fm!=-1){
    if(UseTrailingSound) { PlaySound(NameTrallingSound);}
  }   
  if(fm==0 || fm==-1) { Print("Ошибка № ",GetLastError()," при модификации ордера № ",OrderTicket());}
}
//+------------------------------------------------------------------+
 
VOLDEMAR :
감사합니다.....
하지만 iCustom을 사용하는 방법과 어떤 시점에서 화살표를 그려서 열어야 한다는 조언자를 보여주는 표시기 .....
Ask > BBUP인 경우 iBands가 있는 경우 이해할 수 있지만 화살표가 표시되거나 표시되지 않을 수 있는 개체는 어떻습니까(예: 화살표) ??????


마찬가지로 어떤 버퍼에 어떤 라인의 값이 포함되어 있는지 이해하려면 표시기 코드를 살펴봐야 합니다.

지표 매개변수를 iCustom 기능에 입력하려면 Expert Advisor의 사용자 변수에 지표 매개변수를 입력해야 합니다. 그렇지 않으면 고문은 나열된 변수에 어떤 값이 있는지 이해하지 못합니다.

 
안녕하세요! 제가 뭔가 잘못된 것을 묻는다면 저를 걷어차지 마십시오. 그러나 전체 포럼과 인터넷을 뒤져 보았지만 제가 찾던 것을 찾지 못했습니다. 질문은 ~이야! if(마지막 StopLoss(시간) 이후에 종료해야 하는 경우, 예를 들어 2개의 이익) else가 수행되지 않는 동안 조건을 생성할 수 있습니까? 그리고 가능한 경우 코드에서 작은 스케치가 가능하지만, 단어로 간단히 도표를 그릴 수 있습니다. 미리 감사드립니다!
 
ruzzo :
안녕하세요! 제가 뭔가 잘못된 것을 묻는다면 저를 걷어차지 마십시오. 그러나 전체 포럼과 인터넷을 뒤져 보았지만 제가 찾던 것을 찾지 못했습니다. 질문은 ~이야! if(마지막 StopLoss(시간) 이후에 종료해야 하는 경우, 예를 들어 2개의 이익) else가 수행되지 않는 동안 조건을 생성할 수 있습니까? 그리고 가능한 경우 코드에서 작은 스케치가 가능하지만, 단어로 간단히 도표를 그릴 수 있습니다. 미리 감사드립니다!


일반적으로 정확히 무엇이 필요한지 명확하지 않습니다.

if()에 조건을 넣을 수 있습니다. 모든 이벤트가 시작된 후에 스틱을 사용할 수 있습니다. 그러나 "두 개의 이익을 닫는다"는 것은 무엇을 의미합니까? 그리고 당신은 다른 일을 할 수 있습니다. 그럼 사업...


if(условие){

// какой-то код 

}

else {

// какой-то код 

} 
 
drknn :


일반적으로 정확히 무엇이 필요한지 완전히 불분명합니다.

if()에 조건을 넣을 수 있습니다. 모든 이벤트가 시작된 후에 스틱을 사용할 수 있습니다. 그러나 "두 개의 이익을 닫는다"는 것은 무엇을 의미합니까? 그리고 당신은 다른 일을 할 수 있습니다. 그럼 사업...


이것은 내가 먼저 조건을 이해한 다음 코드를 작성했지만 조건을 만들고 싶었습니다. StopLoss를 얻었고 다른 로트에서 작업했습니다. 예를 들어 - 두 개의 이익으로 거래를 마감할 때까지 t if의 균형을 비교하고 싶습니다! 잔액을 비교하고 시간 제한이 있는 보류 중인 주문이 있는 경우 - 변경된 로트가 건너뛰기 - 주문이 증가된 로트와 함께 만료되기 때문에 - 아마도 내가 제대로 파지 못하고 있는 것일까요?
 

plz가 그것을 알아낼 수 있도록 도와주세요.

MACD 샘플을 사용하기로 결정했는데 무슨 일이 일어나고 있는지 알 수 없습니다! 터미널의 기본 버전이라도 상관 없습니다.

모두 오류가 발생합니다.

2011.02.28 23:01:53 MACD 샘플 EURUSD,M15: BUY 주문 열기 오류: 130

5글자를 셉니다. 1:500, 로트 0.1 또는 1, 차이 없음, 실제 계정.

SL과 TP를 10배로 늘렸고, 아무것도 바뀌지 않았으며, 더 많이 바뀌었고, 그곳에서 무언가를 열 수 있는 결과가 없었습니다(((

그것이 작동한다는 사실은 이해할 수 있습니다. 당신이 손으로 거래를 열면 그 후에 그는 자신이 그것을 손실없이 양도하고 추적하기 시작하지만 그는 자신을 열고 싶지 않습니다!

글쎄, 내가 뭘 잘못하고 있니, 나는 일주일 동안 이해할 수 없다!?