Molanis 실수 누구? - 페이지 3

 

RJo :

그렇긴 하지만 SB에서 결함이 있는 mq4 가 있는 기능적인 ex4를 아직 보지 못했습니다.

결함이 있는 mql4 코드를 게시했습니다. . . Molanis가 EA Builder보다 좋지 않은 것 같습니다.
 
RJo :


아, 그래서.. 컴퓨터가 장사에 최고니까 인간은 버려야 합니다.


아니요.... 컴퓨터는 자동 거래에서 최고입니다 ;)
 
RaptorUK :
결함이 있는 mql4 코드를 게시했습니다. . . Molanis가 EA Builder보다 좋지 않은 것 같습니다.


ex4가 mq4보다 더 기능적 이므로 ex4 파일과 관련된 "결함"입니다. 첫 번째 게시물에서 언급했듯이 저는 코더가 아닙니다. 야. 구체적인 진단에 감사드립니다. 오 예 ... 당신은 하나가 없었습니다.

 
RJo :


ex4가 mq4보다 더 기능적이므로 ex4 파일과 관련된 "결함"입니다. 첫 번째 게시물에서 언급했듯이 저는 코더가 아닙니다. 야. 구체적인 진단에 감사드립니다. 오 예... 당신은 하나가 없었어요.

WHRoeder가 이미 제공한 것을 복제할 필요가 없습니다. .
 
JDeel :

어셈블러에서 프로그래밍을 시작하지 않겠습니까? 사용 가능한 가장 낮은 수준(기계어 코드 다음)에서 모든 것을 제어할 수 있습니다. 예, 그것을 배우려면 더 많은 노력이 필요하지만 우리는 확실히 매우 작고 매우 최적화된 코드를 얻을 것입니다! 정말 대단하지 않나요?

deVries , Molanis는 내 도구가 아니며 EA에서 사용하도록 만든 적이 없습니다. 그러나 나는 당신이 EA Builders의 팬이 아니라는 것을 알았습니다. 나는 그들과 함께 일하지 말라고 조언할 수 있습니다. MQL4/MQL5를 사용하면 됩니다. 이것은 금지되지 않습니다. 분홍색을 가장 좋아하는 사람이 있고 파란색을 가장 좋아하는 사람이 있습니다. 항상 그랬고 앞으로도 그럴 것입니다.


내 말을 바꾸지 마십시오.... 내가 작성한 도구를 사용하여 Expert Advisor를 올바르게 코딩할 수 있음을 증명하십시오. 그래도 내 말은...

나는 Molanis가 당신의 도구라고 쓴 적이 없습니다. EABuilders를 검색하면 다른 항목을 찾을 수 있습니다. 아마도 당신은 NoProgra Builder의 사용자 일 것입니다 ...

MetaTrader4용 EA를 올바르게 코딩한 다음 해당 빌더로 증명할 수 있는 도구라고 생각합니다.

하지만 EABuilder를 사용하도록 조언하거나 사용하도록 홍보하는 사람들이 있습니다.

어떤 제품을 홍보하고 싶다면 그것을 증명함으로써 그 제품이 좋은지 확인하십시오

그리고 아직까지 성공한 사람을 본 적이 없다....

이러한 도구의 가장 큰 단점은 도구로 제품을 만들 수 있을 때 mq4의 기본 사항을 알 필요가 없다고 생각하는 사람들이 있다는 것입니다.

그러나 그들은 그 도구에서 어떤 품질을 얻었는지 모릅니다. 또는 인터넷을 사용하여 얻을 수 있는(무료든 아니든) 프로그램의 오류를 인식하지 못합니다.

 
RJo :

구체적인 진단에 감사드립니다. 오 예 ... 당신은 하나가 없었습니다.

구체적인 예를 들어 드리겠습니다. . .

 int CLOSELONG( string symbol_c) {
 CloseAllPositions(symbol_c,OP_BUY,MagicNumberLong);
 CloseAllPositions(symbol_c,OP_BUY,MagicNumberLong);
 return ( 0 );
}

//CLOSESHORT closes short positions
/*
*** Generated with Molanis Strategy Builder 3.1 ***
*** www.molanis.com ***
*** Released 2010-02-20 ***
*/
int CLOSESHORT( string symbol_c) {
 CloseAllPositions(symbol_c,OP_SELL,MagicNumberShort);
 CloseAllPositions(symbol_c,OP_SELL,MagicNumberShort);
 return ( 0 );
}

이 2개의 함수 는 동일한 함수를 두 번 호출합니다. . CloseAllPositions, 첫 번째는 Longs, 두 번째는 Shorts 입니다. . . 왜 그럴까요? CloseAllPositions가 처음 실행될 때 마감에 실패한 주문을 정리하기 위해 수행합니다. 왜 포지션을 닫지 못합니까? 이 위치를 닫는 데 사용된 루프가 증가하고 감소하기 때문입니다. . . 그리고 바로 이 주제에 대해 제가 작성한 스레드를 읽었을 때 이것이 실패하는 이유를 이미 알고 있습니다.

그래서 Molanis 의 좋은 사람들 은 왜 몇몇 직위 가 공석 으로 남아 있는지 이해 하기 보다는 수정 을 피하고 있습니다 . . . 동일한 함수를 두 번째 호출하여 첫 번째 이후에 정리합니다.

 

Molanis 코드를 게시해 주셔서 감사합니다. RJo, 나중에 검토하겠습니다. Molanis의 제비 계산은 매우 끔찍합니다. molanis / EA SB 사용자는 mql을 배울 때까지 행복한 사용자라고 생각하고 그때쯤이면 Molanis/EA SB를 완전히 다른 관점에서 보게 될 것입니다.

Molanis/EA SB를 방어하거나 사용하기로 결정하는 것보다 먼저 자금을 방어하는 것이 더 낫다고 생각합니다. ;).

 
RJo :
인디:


코드 올려주셔서 감사합니다....

WHRoeder가 오류를 너무 빨리 지적하는 것만큼 나는 그렇지 않으며 다시 말하는 것은 의미가 없습니다.

그러나 코딩 방법을 모르는 경우 여기에서 볼 수 있는 다른 작업을 수행할 수 있습니다....

.

나는 표시기의 동작을 보기 위해 테스트를 했고 그것은 또한 두 개의 그림을 만든 일종의 경고를 제공합니다

2012년 1월 1일부터 1분 테스트(EA가 거래하지 않음)

이 그림에서 표시기 테스트 전의 동작을 볼 수 있습니다.

그리고 테스트가 시작될 때의 행동

이 동작은 지표를 사용하지 않는 EA를 테스트에 배치하는 경우에도 볼 수 있습니다.

.

완전히 다른 동작처럼 보입니다. 이것은 또한 사용하기 전에 코드나 표시기의 동작을 자세히 살펴보라는 경고이기도 합니다.

.

이 표시기의 코드는 다음으로 시작하기 때문에 Molanis에서 만든 것이 아닌 것 같습니다.

 // This is Not Tested , Use At Your Own Risk !

//+--------------------------------------------------------------------------+
//| 3 MA Cross w_Alert v2.mq4                                                |
//| Copyright © 2005, Jason Robinson (jnrtrading)                            |
//| http://www.jnrtading.co.uk                                               |
//| 3 ma conversion and Alert , David Honeywell , transport.david@gmail.com  |
//| http://finance.groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/ |
//+--------------------------------------------------------------------------+

/*
  +-------------------------------------------------------------------------------+
  | Allows you to enter 3 ma periods and it will then show you and alert you at   |
  | which point the 2 faster ma's "OPEN" are both above or below the Slowest ma . |
  +-------------------------------------------------------------------------------+
*/    

이 지표의 오류는 미래를 계산한다는 것입니다.

   for (i = 0 ; i <= limit; i++)
    {
      
      counter=i;
      Range= 0 ;
      AvgRange= 0 ;
       for (counter=i ;counter<=i+ 9 ;counter++)
       {
         AvgRange=AvgRange+ MathAbs (High[counter]-Low[counter]);
       }
      Range=AvgRange/ 10 ;
       
      fasterMAnow      = iMA ( NULL , 0 , FasterMA, FasterShift, FasterMode, PRICE_CLOSE , i+ 1 );
      fasterMAprevious = iMA ( NULL , 0 , FasterMA, FasterShift, FasterMode, PRICE_CLOSE , i+ 2 );
      fasterMAafter    = iMA ( NULL , 0 , FasterMA, FasterShift, FasterMode, PRICE_CLOSE , i- 1 );
      
      mediumMAnow      = iMA ( NULL , 0 , MediumMA, MediumShift, MediumMode, PRICE_CLOSE , i+ 1 );
      mediumMAprevious = iMA ( NULL , 0 , MediumMA, MediumShift, MediumMode, PRICE_CLOSE , i+ 2 );
      mediumMAafter    = iMA ( NULL , 0 , MediumMA, MediumShift, MediumMode, PRICE_CLOSE , i- 1 );
      
      slowerMAnow      = iMA ( NULL , 0 , SlowerMA, SlowerShift, SlowerMode, PRICE_CLOSE , i+ 1 );
      slowerMAprevious = iMA ( NULL , 0 , SlowerMA, SlowerShift, SlowerMode, PRICE_CLOSE , i+ 2 );
      slowerMAafter    = iMA ( NULL , 0 , SlowerMA, SlowerShift, SlowerMode, PRICE_CLOSE , i- 1 );
" i = 0 "일 때 " i-1 "은 미래입니다.....
 
WHRoeder :

특정 순서 없이 Ichi_Cloud_EA.mql4

  1. Market_info를 통해 계산하는 대신 외부 Is_micro_account
  2. micro_account 및 NormalizeDouble을 사용하면 lotStep이 0.1 0r 0.01이라고 가정합니다. 다른 브로커 정의 값은 허용되지 않습니다.
  3. 계산하는 대신 외부 FiveDigits. 3 또는 5에 대한 테스트만 표준 쌍, jpy 유형 쌍을 허용합니다. 금속 거래 실패 . 잘못된 설정을 테스트하는 이유.
  4. 전역 PipMultiplier는 차트 변경 시 다시 재설정 되지 않습니다 .
  5. 많은 외부 bool은 전략을 테스트할 수 없습니다.
  6. 두 개의 매직 넘버를 사용할 이유가 없습니다.
  7. TradingStartTime과 TradingEndTime 사이의 시간에만 거래됩니다. 자정을 초과하여 시간을 설정할 없음(예: 시작 2000, 종료 0600, 즉 시드니 세션만)
  8. PreviousBarCount==막대를 사용합니다. 신뢰할 수 없는 막대(차트의 최대 막대) 거래량은 신뢰할 수 없습니다(눈금을 놓칠 수 있음)는 항상 시간을 사용합니다.
  9. 더 간단하고 빠른 Close[1] 대신 iClose(Symbol(),0,1)를 사용합니다.
  10. Init Slippage = Slippage*PipMultiplier; 차트를 변경할 때마다 의미(페어 또는 시간 프레임) 미끄러짐 3, 30, 300, 3000 증가합니다!!
  11. magiccond 및 기타 bool 사용 if (조건) boolVar= true; 그렇지 않으면 boolVar = 거짓; 더 간단한 boolVar = 조건을 사용할 수 있을 때;
  12. (iClose() <> iCustom()) 정확히 동일한 iClose 및 iCustom 호출이 4번 이상 호출되는 경우 값을 캐시하지 않습니다.
  13. 닫는 동안 카운트 업합니다. 함수를 두 번 호출합니다. 세는 것은 다른 모든 주문을 놓친다는 것을 의미합니다. 함수를 두 번 호출하면 4개 이상의 미결 주문에서 실패 한다는 의미입니다. 항상 카운트다운합니다.
  14. "M-ERROR: 만료는 1분 이상이어야 합니다." 이 만료 기간에 대한 게시물이 있었는데 10분 이상이어야 합니다!
  15. 보류 중인 주문의 경우 ticksize != Point일 때 작동하지 않는 Normaliszedouble(price, Digits)을 호출합니다.

10번이 가장 신경쓰여서 먼저 조사해봤습니다. 나는 이것을 발견했을 때 Molanis에게 거대한 지원 요청을 작성하는 중이었습니다.

EA의 코드에서 사용된 슬리피지는 외부 정수 변수(extern int)입니다.

"init() 실행 전에 외부 변수는 설정 도구 모음에서 사용자가 설정한 값을 가져오고 init() 실행 시 외부 변수는 사용자가 설정한 새 값을 갖습니다. 따라서 외부 변수의 새 값은 init() 실행에서 시작하는 Expert Advisor의 새 세션(init - start - deinit)의 순간입니다." ( https://book.mql4.com/variables/types ).

그래서 ... 전역 변수는 일반적으로 init() 실행 시 이전 값을 위해 무시되지만 외부 변수는 init() 실행 시 업데이트됩니다. 차트를 몇 번이나 변경하더라도 Slippage는 3(또는 내가 설정한 값)으로 유지됩니다. 이것이 EA가 작동하도록 설계된 방식이라고 생각합니다.

 
RJo :
그래서 ... 전역 변수는 일반적으로 init() 실행 시 이전 값을 위해 무시되지만 외부 변수는 init() 실행 시 업데이트됩니다.

차트를 몇 번이나 변경하더라도 Slippage는 3(또는 내가 설정한 값)으로 유지됩니다. 이것이 EA가 작동하도록 설계된 방식이라고 생각합니다.

WRONG 게시한 링크( https://book.mql4.com/variables/types )를 읽기 귀찮았습니까? "전역 변수는 특수 기능 실행을 명시하기 전에 한 번만 초기화됩니다 ."

전역 및 정적 변수는 초기화/초기화 주기가 아닌 EA가 로드될 때 설정됩니다.

Slippage = Slippage * 10 바로 뒤에 print 문을 추가하고 실행하고 차트 또는 시간 프레임을 변경하고 우리 문서를 믿기 싫으면 로그를 살펴보십시오.

사유: