코딩 도움말 - 페이지 781

 
도와주시겠습니까?

이 표시기는 양초가 닫힐 때 일부 값을 업데이트한다고 가정하지만 충분히 일찍 응답하지 않습니다. 일반적으로 양초가 끝난 후 20-40초입니다. 여러 번 차트를 다시 로드해야 합니다.

문제를 해결하는 데 도움을 줄 수 있습니까?
파일:
 
Savior : r 촛불이 닫힐 때 일부 값을 업데이트한다고 가정합니다.

그와 같은 일은 없다. 새 틱이 새 양초를 시작하는 현재 양초의 마지막 초를 지나 도착하면 양초는 닫힌 것으로 간주됩니다.

아시아 세션 동안 틱 사이에 몇 분이 있을 수 있습니다. M1 차트를 생각해 보세요. 더 큰 차트, 주말, 시장 휴일(국가 및 중개인에 따라 다름)을 생각하려면 중개인이 언제 중지하고 시작하는지에 대한 지식이 필요합니다(시장과 동일할 필요는 없음).
"구멍 없는" 차트 - MQL4 기사 2006년 6월 20일
열림 = 닫으면 촛불 없음? - MQL4 프로그래밍 포럼 2010.06.06

코드는 타이머에서 초당 한 번 실행되고 하나의 기호가 새 막대를 시작할 때 업데이트됩니다. 아무 잘못 없음.

 

모두들 안녕 -

EA Builder를 사용하여 괜찮은 EA를 설정하지만 Fractals를 사용하여 설정하는 데 어려움을 겪고 있습니다.

프랙탈이 5개의 양초 시리즈에서 중간점으로 나타나는 경우 '시프트' 및 인덱스가 올바르지 않을 수 있습니다.

간단한 long 생성 시도(시프트/인덱스를 이해하면 매개변수 를 늘릴 수 있음)

오픈, 프랙탈, 시간 프레임(현재), 표시기(상단) 시프트(3) '위' 촛대, 지수(3), 값(낮음)

프랙탈이 되는 아이디어는 낮은 양초 아래에 있고 추세를 시작할 준비가 되었습니다. 현재 두 개의 양초가 더 높은 고점을 가질 것이라는 사실을 깨닫고 나는 이것을 프랙탈 아래가 아닌 후퇴 시 제한 매수로 사용할 것입니다

큰 도움을 주셔서 감사합니다! 고마워, 데이빗

 
  1. David-Toronto : 도움에 감사드립니다! 고마워, 데이빗
    무엇을 도와주세요? 문제를 언급한 적도 없고, 원하는 것도 말하지 않았습니까?

  2. David-Toronto : EA Builder를 사용하여 괜찮은 EA 설정
    EA 빌더, EATree, Etasoft 외환 생성기, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FX EA Builder , fxDreema , FxPro, Molanis , Online Forex Expert Advisor Generator , 전략 빌더 FX , Strategy Quant, Visual Trader Studio, MQL5 Wizard 등, 모두 동일합니다. 빨리 뭔가를 얻을 수 있지만, 언어를 미리 배운 다음 그냥 쓰는 것보다 올바르게 이해하는 데 훨씬 더 오랜 시간을 할애하게 될 것입니다.
    1. MQL4/5를 배우지 않았기 때문에 우리가 의사 소통할 수 있는 공통 언어가 없습니다 .
      우리가 당신에게 필요한 것을 말하면, 당신은 그것을 코딩할 수 없습니다.
      우리가 당신에게 코드를 준다면 당신은 그것을 당신의 코드에 통합하는 방법을 모릅니다.
      귀하의 시도(SRC 사용)와 문제의 특성을 게시할 때 기꺼이 도와 주지만 귀하의 문제 를 디버깅하지는 않을 것 입니다. 수백 줄의 코드. 당신은 본질적으로 당신 자신이 될 것입니다.

    2. EA 빌더는 여러 주문을 마감하는 동안 잘못된 코드를 계산합니다.
      EA 빌더는 잘못된 코드를 만듭니다. 막대는 신뢰할 수 없고 (차트의 최대 막대) , 볼륨은 신뢰할 수 없습니다(눈금 누락). 항상 시간 을 사용하십시오.
      EA 빌더는 4/5자리 브로커, TP/SL 슬리피지를 조정 하지 않고 잘못된 코드를 만듭니다.
      EA 빌더는 ECN 브로커를 조정하지 않고 잘못된 코드를 만듭니다. 사전 빌드 500)
      EA 빌더는 반환 코드를 확인 하지 않고 잘못된 코드를 만듭니다 .

    3. EATree는 영구 저장소가 아닌 차트의 개체를 사용하여 값을 저장합니다( 파일 또는 GV + Flush .) 복구 없음(충돌/정전).

    4. FX EA Builder는 반환 코드를 확인 하지 않고 잘못된 코드를 만듭니다.
      FX EA Builder는 잘못된 코드를 만들어 터미널을 다시 시작할 때 열린 티켓을 잃습니다. 복구 불가(충돌/정전)
      FX EA Builder는 스프레드에 대한 중지를 조정하지 않고 잘못된 코드를 만듭니다.
      FX EA Builder는 OrdersTotal 을 직접 사용하여 잘못된 코드를 만듭니다.

    5. FOREXEADVISOR STRATEGY BUILDER는 잘못된 코드를 만들고 전역 변수를 업데이트하지 않습니다.
      FOREXEADVISOR STRATEGY BUILDER는 잘못된 코드, 컴파일 오류를 만듭니다.
      FOREXEADVISOR STRATEGY BUILDER는 반환 코드를 확인 하지 않고 잘못된 코드를 만듭니다.

    그것을 코딩 하는 법 배우 거나 누군가 (프리랜스)에게 코딩을 하게 하십시오.
    스크립트 작성을 위한 고용 - 일반 - MQL5 프로그래밍 포럼

 
William Roeder :
  1. 무엇을 도와주세요? 문제를 언급한 적도 없고, 원하는 것도 말하지 않았습니까?

  2. EA 빌더, EATree, Etasoft 외환 생성기, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FX EA Builder , fxDreema , FxPro, Molanis , Online Forex Expert Advisor Generator , 전략 빌더 FX , Strategy Quant, Visual Trader Studio, MQL5 Wizard 등, 모두 동일합니다. 빨리 뭔가를 얻을 수 있지만, 언어를 미리 배운 다음 그냥 쓰는 것보다 올바르게 이해하는 데 훨씬 더 오랜 시간을 할애하게 될 것입니다.
    1. MQL4/5를 배우지 않았기 때문에 우리가 의사 소통할 수 있는 공통 언어가 없습니다 .
      우리가 당신에게 필요한 것을 말하면, 당신은 그것을 코딩할 수 없습니다.
      우리가 당신에게 코드를 준다면 당신은 그것을 당신의 코드에 통합하는 방법을 모릅니다.
      귀하의 시도(SRC 사용)와 문제의 특성을 게시할 때 기꺼이 도와 주지만 귀하의 문제 를 디버깅하지는 않을 것 입니다. 수백 줄의 코드. 당신은 본질적으로 당신 자신이 될 것입니다.

    2. EA 빌더는 여러 주문을 마감하는 동안 잘못된 코드를 계산합니다.
      EA 빌더는 잘못된 코드를 만듭니다. 막대는 신뢰할 수 없고 (차트의 최대 막대) , 볼륨은 신뢰할 수 없습니다(눈금 누락). 항상 시간 을 사용하십시오.
      EA 빌더는 4/5자리 브로커, TP/SL 슬리피지를 조정 하지 않고 잘못된 코드를 만듭니다.
      EA 빌더는 ECN 브로커를 조정하지 않고 잘못된 코드를 만듭니다. 사전 빌드 500)
      EA 빌더는 반환 코드를 확인 하지 않고 잘못된 코드를 만듭니다 .

    3. EATree는 영구 저장소가 아닌 차트의 개체를 사용하여 값을 저장합니다( 파일 또는 GV + Flush .) 복구 없음(충돌/정전).

    4. FX EA Builder는 반환 코드를 확인 하지 않고 잘못된 코드를 만듭니다.
      FX EA Builder는 잘못된 코드를 만들어 터미널을 다시 시작할 때 열린 티켓을 잃습니다. 복구 불가(충돌/정전)
      FX EA Builder는 스프레드에 대한 중지를 조정하지 않고 잘못된 코드를 만듭니다.
      FX EA Builder는 OrdersTotal 을 직접 사용하여 잘못된 코드를 만듭니다.

    5. FOREXEADVISOR STRATEGY BUILDER는 잘못된 코드를 만들고 전역 변수를 업데이트하지 않습니다.
      FOREXEADVISOR STRATEGY BUILDER는 잘못된 코드, 컴파일 오류를 만듭니다.
      FOREXEADVISOR STRATEGY BUILDER는 반환 코드를 확인 하지 않고 잘못된 코드를 만듭니다.

    그것을 코딩 하는 법 배우거나 누군가 (프리랜스)에게 코딩을 하게 하십시오.
    스크립트 작성을 위한 고용 - 일반 - MQL5 프로그래밍 포럼

William에게 감사하지만 아직 코딩할 준비가 되지 않았으며 머리에 벽돌이 필요하지 않습니다.

EA Builder를 시작하거나 사용한 사람에게 도움을 줄 수 있는 경우에만 회신해 주십시오. 감사해요


문제는 캔들 위에서 발생하는 프랙탈에 대한 매수 거래(EA Builder 사용)를 여는 방법입니다.

내 시도는 프랙탈 발생 후(촛불 위 또는 아래) 발생하는 구매 주문을 제공하는 것입니다.

사용: 프랙탈, 시간 프레임(현재), 표시기(상단) 시프트(3) '위' 촛대, 지수(3), 값(낮음)

 

안녕하세요

저는 코딩을 처음 접했고 코딩하려고 하는 지표에 대해 도움을 받고 싶습니다. 나는 기본적으로 어느 것이 어디에 있는지에 따라 막대의 열기 및 닫기 값의 밴드를 내 자신의 MA로 만들고 있습니다. 즉, 열기가 닫기보다 높으면 상단 배열에 저장되고, 그렇지 않으면 하단 배열에 저장됩니다. 내가 쓴 EA에서 상당한 문제 해결을 수행했지만 불행히도 표시기에서 동일한 결과를 얻을 수 없습니다.

파일:
MA_Band.mq4  5 kb
 
  1. PLZFrosty : 그러나 표시기에서 동일한 결과를 얻을 수 없습니다.

    "작동하지 않는다"는 의미가 없습니다. 마치 자동차가 작동하지 않는다고 말하는 것과 같습니다. 시동이 걸리지 않고, 기어가 들어가지 않고, 전기가 들어오지 않고, 열쇠가 없고, 타이어가 펑크납니다. 의미가 없습니다. 정말 대답을 기대합니까? 여기에는 마음의 독자가 없고 우리의 수정 구슬은 금이 갔습니다. 문제를 언급하지 않았습니다.

  2.        SetIndexBuffer ( 0 , MA_top);
          ⋮
           SetIndexBuffer ( 1 , MA_bot);
    
    표시기에 몇 개의 버퍼가 있다고 선언했습니까? 반품 코드를 확인했다면 그 이유를 알았을 것입니다.
    프로그램 속성(#property) - 전처리기 - 언어 기본 - MQL4 참조
 
William Roeder :
  1. "작동하지 않는다"는 의미가 없습니다. 마치 자동차가 작동하지 않는다고 말하는 것과 같습니다. 시동이 걸리지 않고, 기어가 들어가지 않고, 전기가 들어오지 않고, 열쇠가 없고, 타이어가 펑크납니다. 의미가 없습니다. 정말 대답을 기대합니까? 여기에는 마음의 독자가 없고 우리의 수정 구슬은 금이 갔습니다. 문제를 언급하지 않았습니다.

  2. 표시기에 몇 개의 버퍼가 있다고 선언했습니까? 반품 코드를 확인했다면 그 이유를 알았을 것입니다.
    Comment 함수 를 사용하여 작동을 멈추는 위치를 알아냈고 언급된 배열에 값을 넣어야 하는 지점에서 멈추는 것을 발견했습니다. 누군가가 대신 해결해 주는 것이 아니라 문제 해결에 대한 지침을 요청하는 것입니다. 내가 무엇을 놓쳤는지, 무엇을 잘못했는지, 그리고 어디에서 해결책을 읽어야 하는지 알려주면 많은 도움이 될 것입니다. 링크 주셔서 감사합니다. 적어도 그것은 해결된 내 문제 중 하나입니다. 코드 폭탄이 발생한 문제를 해결하기 위해 Comment()를 사용하는 것보다 더 효율적인 방법이 있습니까?
Documentation on MQL5: Common Functions / Comment
Documentation on MQL5: Common Functions / Comment
  • www.mql5.com
[in]   Any values, separated by commas. To delimit output information into several lines, a line break symbol "\n" or "\r\n" is used. Number of parameters cannot exceed 64. Total length of the input comment (including invisible symbols) cannot exceed 2045 characters (excess symbols will be cut out during output). Data of double type are output...
 
PLZFrosty :

무엇을 해야 하는지는 알지만 작동하지 않는 이유를 찾는 방법을 모르겠습니다. 나는 Comment 함수 를 사용하여 작동을 멈추는 위치를 알아냈고 언급된 배열에 값을 넣어야 하는 지점에서 멈추는 것을 발견했습니다. 누군가가 대신 해결해 주는 것이 아니라 문제 해결에 대한 지침을 요청하는 것입니다. 내가 무엇을 놓쳤는지, 무엇을 잘못했는지, 그리고 어디에서 해결책을 읽어야 하는지 알려주면 많은 도움이 될 것입니다. 링크 주셔서 감사합니다. 적어도 그것은 해결된 내 문제 중 하나입니다. 코드 폭탄이 발생한 문제를 해결하기 위해 Comment()를 사용하는 것보다 더 효율적인 방법이 있습니까?

어떻게 든 작동하게 만들었지 만 왜 작동하고 다른 방향으로 작동하지 않는지 모르겠습니다. 내 추론에서 작은 실수를보고 내 기능을 다시 작성했습니다. Comment(DoubleToString(array[1], 3);을 사용할 때 여전히 내 배열 값이 표시되지 않지만 적어도 MA 라인을 그리고 있습니다. Comment를 사용하는 것 외에 내 배열 값을 볼 수 있는 방법이 있습니까? ()?
 
input int SmallEMA = 50 ;
input int BigEMA = 100 ;
void OnTick ()
  {
   string signal = "" ;
   double SmallMovingAvarage1 = iMA ( Symbol (), PERIOD_CURRENT ,SmallEMA, 0 , MODE_EMA , PRICE_CLOSE , 0 );
   double BigMovingAvarage1   = iMA ( Symbol (), PERIOD_CURRENT ,BigEMA, 0 , MODE_EMA , PRICE_CLOSE , 0 );
   
   if (BigMovingAvarage1 > SmallMovingAvarage1)
   
   {
   
      signal = "sell" ;
   }
   
   if (BigMovingAvarage1 < SmallMovingAvarage1)
    
   {
      signal = "buy" ;
   }
   
   
 
   if (signal == "sell" &&   OrdersTotal () == 0 )
   
   OrderSend ( Symbol (),OP_SELL, 0.02 ,Bid, 10 , 0 , 0 , NULL , 0 , 0 );
   
    
   
   if ( signal == "buy" && OrdersTotal () == 1 )
   
   CloseSellPositions();
  
   
   
   if (signal == "buy" &&   OrdersTotal () == 0   )
   
     OrderSend ( Symbol (),OP_BUY, 0.02 ,Ask, 10 , 0 , 0 , NULL , 0 , 0 );
   
   //if (signal == "sell" && 0 <= OrdersTotal() <= 1)
   
   if (signal == "sell" && OrdersTotal () == 0 )
   
   CloseBuyPositions();
    
   
   Comment ( "The current signal is: " ,signal);
   
   
  }


void CloseBuyPositions()
   {
   
   for ( int i = OrdersTotal () - 1 ; i >= 1 ; i--)
   {
       OrderSelect (i,SELECT_BY_POS,MODE_TRADES);
      
       string CurrencyPair = OrderSymbol();
      
       if ( Symbol () == CurrencyPair)
      
       if (OrderType () == OP_BUY)
      {
         
         OrderClose(OrderTicket(), 0.02 ,Bid, 10 );
      }
   }
   
   
   }
void CloseSellPositions()
   {
   
   for ( int i = OrdersTotal ()- 1 ; i >= 1 ; i--)
   {
       OrderSelect (i,SELECT_BY_POS,MODE_TRADES);
      
       string CurrencyPair = OrderSymbol();
      
       if ( Symbol () == CurrencyPair)
      
       if (OrderType () == OP_SELL)
      {
         OrderClose(OrderTicket(), 0.02 ,Ask, 10 );
      }
    }
   } 

안녕,


EMA (1) = 50

EMA (2) = 100


만약 (50 <100)

열린 매수 포지션이 있는 경우 닫고 매도 포지션을 엽니다.


만약 (50> 100)


열린 매도 포지션이 있는 경우 닫고 매수 포지션을 엽니다.


이러한 조건을 충족하는 전문 컨설턴트를 개발하고 싶습니다. 제가 작성한 코드를 공유했습니다. 하지만 내가 원하는대로 작동하지 않습니다.


내 코드에서 누락된 부분을 완성하는 데 도움을 줄 수 있습니까?