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

 
dixi :

터미널을 다시 설치한 후 MetaEditor가 작동을 멈췄습니다. 표시기 코드에서 아무 것도 변경하지 않은 경우에만 컴파일됩니다. 최소한 선의 색상이라도 무언가가 변경된 경우 오류가 발생합니다.

OS Windows 7. 누군가 비슷한 결함을 발견했을 수 있습니다. 어떻게 해야할지 말해줘?


먼저 터미널 속성으로 이동하여 "호환성" 탭에서 "관리자 권한으로 실행" 상자를 선택합니다. 둘째, 코드 편집기를 시작하는 파일과 동일한 작업을 수행합니다. 이 파일은 "MetaEditor.exe"입니다. 셋째 - 자신을 위해 운영 체제를 구성하고 "삼촌"이 넣은 것을 사용하지 마십시오. 당신이 정확히 무엇을 필요로 하는지 안다면 마지막 요점은 아주 빨리 숙달됩니다.
 
demlin :

모두를 환영합니다!

이 문제를 도와주세요. 새 막대가 나타날 때 표시기를 강제로 다시 그릴 수 없습니다(간격 D). 피

수동으로 다시 시작해야 합니다.


44행은 절대적으로 필요하지 않습니다. 계산되지 않은 양초를 다시 계산 하는 함수를 호출하면 모든 양초가 반환됩니다. 또한 시작 함수의 코드에서 동일한 함수(라인 64)에 대한 호출은 이론상 0을 반환해야 합니다. 그것에주의를 기울이십시오. 새 날이 왔습니다(새 촛불). 무슨 일이 일어나고 있는지 명확하지 않습니다. 어제 표시기가 꺼지고 오늘 새로운 출시가 되었습니까? 아니면 테스터에서 테스트하는 것입니까? 다시 시작하면 초기화 기능이 작동한 다음 시작이 시작됩니다. 시작할 때 계산되지 않은 막대를 이미 호출했기 때문에 처음에는 아무 것도 다시 그려지지 않습니다. 테스터에 있으면 다시 그릴 수 있습니다.

 
FxPro2 :
안녕하세요 여러분! 얘들 아, 나는 asctrend 지표에서 일하는 오래된 Expert Advisor를 만났습니다. 나는 오랫동안이 지표가 실시간으로 어떻게 작동하는지 확인하고 싶었지만 항상 포인트를 추적하는 것이 가능하지 않으며 거래의 그림이 완전하지 않습니다 . 테스터에서 확인해보니 점이 나올때마다 시그널이 있는데 데모에 올려보니 데모에서는 시그널을 건너뛰는 현상이 있는데 전문가는 로그에 아무것도 안쓰는데 찔끔찔끔 코드에서 주위를 둘러보고 걸림돌이 무엇인지 이해하지 못했습니다.

문제는 사용 중인 코드를 이해하지 못한다는 것입니다. 캐치는 기관총을 집어 들었고 어떤 이유로 든 항상 쏘지는 않는다는 것입니다. 내부 및 외부에서 작동을 이해하는 장치를 선택하는 것이 더 나을까요? 하지만?
 
drknn :

먼저 터미널 속성으로 이동하여 "호환성" 탭에서 "관리자 권한으로 실행" 상자를 선택합니다. 둘째, 코드 편집기를 시작하는 파일과 동일한 작업을 수행합니다. 이 파일은 "MetaEditor.exe"입니다. 셋째 - 자신을 위해 운영 체제를 구성하고 "삼촌"이 넣은 것을 사용하지 마십시오. 당신이 정확히 무엇을 필요로 하는지 안다면 마지막 요점은 아주 빨리 숙달됩니다.
고맙습니다! 일어난!!! :)))
 
Dimka-novitsek :

if (NormalizeDouble(OrderClosePrice()-OrderTakeProfit(), Digits)<0.5*포인트)

예, normalize double이 없는 옵션은 0과 비교할 때 그다지 신뢰할 수 없습니다. 여기에서 작동합니다.


ND에 관한 것이 아닙니다. point는 포인트 크기 이고 05를 곱하면 0.00005가 됩니다. 예를 들어 이 숫자를 OrderClosePrice()-OrderTakeProfit()과 비교할 이유가 없습니다. TP는 정확히 동일한 종가를 보장하지 않습니다. 또한, 만 및 마을에 대해 다른 확인 조건이 있습니다.

 if ( OrderType () == OP_SELL)
       {
         if ( NormalizeDouble ( OrderTakeProfit ()- OrderClosePrice (), Digits ) >= 0
          && OrderTakeProfit () != 0 )    

이 디자인은 다소 신뢰할 수 있습니다.

 
drknn :

문제는 사용 중인 코드를 이해하지 못한다는 것입니다. 캐치는 기관총을 집어 들었고 어떤 이유로 든 항상 쏘지는 않는다는 것입니다. 내부 및 외부에서 작동을 이해하는 장치를 선택하는 것이 더 나을까요? 하지만?
아마도. 당신의 마지막 두 게시물은 무의미하고 일부는 도덕적이지만 올바른 생각을 불러일으키면 더 좋을 것입니다. 그런 욕망이 없다면 왜 너무 많이 쓰는가? 나는 누군가에게 나를 돕도록 강요하지 않았습니다. 욕망이 없다면 화를 내지 않을 것입니다. 일이 어렵습니다. 나는 이것을 아주 잘 이해합니다.
 
drknn :
코드가 긴 녀석들! 다른 사람의 코드는 무엇보다도 아직 해독되지 않은 암호라는 것을 다시 한 번 반복하고 싶습니다! 그리고 이것은 작은 작업이 아닙니다! 일부 프로그래머가 목록 킬로미터를 탐구하고 싶어할 것이라고 생각하십니까? 제 코드를 여러분 중 한 명에게 3천 줄만 주고 이 코드에 대한 작은 오해를 없애달라고 요청하겠습니다. 그냥 내 아이디어를 탐구하고 싶다고 생각하세요? 또 의심합니다. 그러므로 나는 당신에게 바라는 것이 있습니다 - 핵심 질문을 할 때 가능한 한 간략하게 문제를 설명하고 동시에 본질을 이해할 수 있도록 설명을 충분하게 만드십시오. 그렇지 않으면, 당신의 외침은 허공에 대한 외침입니다. 코드는 게시물에 첨부할 수 있습니다. 이 모든 것이 필요하고 충분합니다.

전적으로 동의합니다.


FxPro2 :

drknn :

문제는 사용 중인 코드를 이해하지 못한다는 것입니다. 캐치는 기관총을 집어 들었고 어떤 이유로 든 항상 쏘지는 않는다는 것입니다. 내부 및 외부에서 작동을 이해하는 장치를 선택하는 것이 더 나을까요? 하지만?
아마도. 당신의 마지막 두 게시물은 무의미하고 일부는 도덕적이지만 올바른 생각을 불러일으키면 더 좋을 것입니다. 그런 욕망이 없다면 왜 너무 많이 쓰는가? 나는 누군가에게 나를 돕도록 강요하지 않았습니다. 욕망이 없다면 화를 내지 않을 것입니다. 일이 어렵습니다. 나는 이것을 아주 잘 이해합니다.

그러나 결국 당신은 이전에 당신이 만든 코드를 정말로 이해하지 못합니까?

 

여러분, 안녕하세요!!! pliz를 도와주세요. 저는 이제 막 쓰는 법을 배우고 있습니다. 그런 작업에 직면했습니다. 매개변수에 설정된 특정 단계만큼 로트 크기를 늘리는 코드를 작성할 수 없습니다. 여러 조언자를 검토한 결과 다음을 알 수 있었습니다. 그것은 마진에 따라 많이 증가하는 것으로 나타났습니다. 볼 곳을 조언하십시오. 그렇지 않으면 이미 머리가 부러졌습니다. 고맙습니다!

 
SeALALex :

여러분, 안녕하세요!!! pliz를 도와주세요. 저는 이제 막 쓰는 법을 배우고 있습니다. 그런 작업에 직면했습니다. 매개변수에 설정된 특정 단계만큼 로트 크기를 늘리는 코드를 작성할 수 없습니다. 여러 조언자를 검토한 결과 다음을 알 수 있었습니다. 그것은 마진에 따라 많이 증가하는 것으로 나타났습니다. 볼 곳을 조언하십시오. 그렇지 않으면 이미 머리가 부러졌습니다. 고맙습니다!

매개변수에 지정된 특정 단계만큼 로트를 늘려야 하는 조건과 이를 구현하려고 시도한 방법을 코드에 표시합니다.
 
Болк открытия на бай
if (Buy==true) 
  {Buy=false;

   ticket= OrderSend ( Symbol (),OP_BUY,Lots, NormalizeDouble (Ask, Digits ), 5 ,SL,TP,Order, 070177 , 0 , Orange );
   if (ticket> 0 )
    { 
     if ( OrderSelect (ticket,SELECT_BY_TICKET,MODE_TRADES)) 
      { Print ( "BUY order opened : " , OrderOpenPrice ());
       Alert ( "Buy Order for " , Symbol ());
       SendMail ( "Buy Order " + Symbol ()+ " " +Ask,SL);     
       }
     }
     else Print ( "Error opening BUY order : " , GetLastError ()); 
     return ( 0 ); 
   }

Умножение лота в зависимости от маржи нашел в советнике, 
код вставил работает вот только в советнике он увеличивает на определенный шаг, у меня просто в %-ом соотношении

double LotSize() 
  
   {
   double lots_0;
   if (MicroLots == FALSE) {
      lots_0 = NormalizeDouble ( AccountFreeMargin () * RiskPercent / 1000.0 , 1 );
       if (lots_0 < 0.1 ) lots_0 = Lots;
       if (lots_0 >= 1.0 ) lots_0 = NormalizeDouble (lots_0, 1 );
       if (lots_0 >= 100.0 ) lots_0 = 100 ;
   } else {
      lots_0 = NormalizeDouble ( AccountFreeMargin () * RiskPercent / 1000.0 , 2 );
       if (lots_0 < 0.01 ) lots_0 = Lots;
       if (lots_0 >= 1.0 ) lots_0 = NormalizeDouble (lots_0, 2 );
       if (lots_0 >= 100.0 ) lots_0 = 100 ;
   }
   return (lots_0);
}
그런 것