오류, 버그, 질문 - 페이지 2818

 
Stanislav Korotky :

그건 그렇고, 나는 당신이 Renko의 팬이라는 것을 기억했습니다.
귀하의 질문으로 판단 하면 캔버스에 형성된 Renko에 지표를 적용하고 전문가를 중첩하는 것이 불가능하다는 이전 진술이 잘못되었음을 이미 이해하고 있습니다.
만세!

 
Nikolai Semko :

할 수 있다.

첨부파일은 테스트 스크립트입니다.

스크립트 결과:

이것은 인터페이스 표시기(사용자가 수동으로 부과)에만 작동하지만 전문 고문이 만든 표시기에는 작동하지 않습니다. 최대 작업은 Expert Advisor의 소스 코드에 하나를 포함시켜 가상 자동 최적화 가능성을 구현하는 것입니다. 이제 이것은 탬버린과 함께 춤을 출 때만 가능합니다(소스의 추가 편집 또는 일부 기본값(현재 _Symbol / _Period만), 항상 작동하지는 않음).

그러나 원칙적으로 IndicatorParameters 함수가 가장 중요한 두 가지 메타 매개변수를 반환하지 않는 이유는 명확하지 않습니다.

캔버스의 지표 및 Expert Advisors의 경우 기술적으로 모든 것을 수행할 수 있지만 문제는 왜 귀찮게 하는지입니다. 캔버스의 목적은 다릅니다. 맞춤형 견적의 경우 지표와 전문가가 표준 방식에 맞는 기성품 솔루션이 있습니다.

 

알려주십시오 - 위젯 및 신호에서 이익이 올바르게 계산되는 방법...

지난 주 - 또는 오히려, 거래의 처음 5일 동안 나는 1000%를 벌었고 그 다음 날


또 다른 1000%를 만들었습니다. 신호와 위젯에 모두 올바르게 반영되었습니다.

그래서 ... 거래의 두 번째 주가 왔습니다-그리고 Bam ... 그리고 백분율은 + 39 %로 밝혀졌습니다.

글쎄, 나는 조금 더 거래 할 것이라고 생각합니다 .. 그리고 오늘 끝내겠습니다 - 나는 0을 끝내고 bam ... 나는 이미 + 39 %가 없지만 모두 98 % ... 성장에 있으므로 바브셰 + 4000%



그래서 내 관심은 무엇입니까? 39 또는 98 또는 나는 내 눈을 믿어야합니다 - 그래서 모든 것이 4000 %입니다

 
Stanislav Korotky :

이것은 인터페이스 표시기(사용자가 수동으로 부과)에만 작동하지만 전문 고문이 만든 표시기에는 작동하지 않습니다. 최대 작업은 Expert Advisor의 소스 코드에 하나를 포함시켜 가상 자동 최적화 가능성을 구현하는 것입니다. 이제 이것은 탬버린과 함께 춤을 출 때만 가능합니다(소스의 추가 편집 또는 일부 기본값(현재 _Symbol / _Period만), 항상 작동하지는 않음).

그러나 원칙적으로 IndicatorParameters 함수가 가장 중요한 두 가지 메타 매개변수를 반환하지 않는 이유는 명확하지 않습니다.

캔버스의 지표 및 Expert Advisors의 경우 기술적으로 모든 것을 수행할 수 있지만 문제는 왜 귀찮게 하는지입니다. 캔버스의 목적은 다릅니다. 맞춤형 견적의 경우 지표와 전문가가 표준 방식에 맞는 기성품 솔루션이 있습니다.

예, 표시기가 IndicatorCreate, iCustom, iMA, iMACD, i... 기능에 의해 생성되고 길을 잃는 경우, 즉 ChartIndicatorAdd를 사용하여 차트에 첨부되지 않은 경우 실제로 이 표시기가 생성되지 않은 경우 이 표시기의 TF 및 기호를 인식하는 것이 불가능합니다. 그렇다면 인디케이터를 생성하고 핸들을 받는 시점의 심볼과 TF를 알아야 합니다.
지표가 귀하의 것이 아닌 경우, 특히 이 지표가 차트에 없고 서비스 지표일 때 다른 사람의 정원에 간섭하는 것은 비논리적으로 보입니다.
그러나 핸들로 제어해야 하는 기호 및 TF의 표시기가 사용자가 작성했지만 사용자가 사용하지 않거나 제어 없이 사용되는 경우 봉제되는 추가 버퍼를 만들 수 있습니다(통합을 통해 , 예) 및 현재 TF 및 기호. 그런 다음 CopyBuffer 를 사용 하여 특수 기능을 사용하여 핸들을 단순하게 반복하더라도 이것이 표시기인지 확인할 수 있고, 표시기라면 현재 기호와 TF를 읽을 수 있습니다.
그러나 IndicatorParameters에 TF와 기호를 제거할 수 있는 기능이 있었다면 훨씬 더 쉬웠을 것입니다. 분명히 이 기능이 없습니다. 이것이 없는 것은 보안 때문일 것 같지 않습니다. tk. 익숙하지 않은 핸들로 인해 TF와 기호를 제외하고 표시기의 내용에 완전히 액세스할 수 있습니다.

 
Aleksander :

알려주십시오 - 위젯 및 신호에서 이익이 올바르게 계산되는 방법...

지난 주 - 또는 오히려, 거래의 처음 5일 동안 나는 1000%를 벌었고 그 다음 날


또 다른 1000%를 만들었습니다. 신호와 위젯에 모두 올바르게 반영되었습니다.

그래서 ... 거래의 두 번째 주가 왔습니다-그리고 Bam ... 그리고 백분율은 + 39 %로 밝혀졌습니다.

글쎄, 나는 조금 더 거래 할 것이라고 생각합니다 .. 그리고 오늘 끝내겠습니다 - 나는 0을 끝내고 bam ... 나는 이미 + 39 %가 없지만 모두 98 % ... 성장에 있으므로 바브셰 + 4000%



그래서 내 관심은 무엇입니까? 39 또는 98 또는 나는 내 눈을 믿어야합니다 - 그래서 모든 것이 4000 %입니다

그런 순진한 질문에 대한 답은 너무 뻔해서 무심코 자기 홍보에 대한 의혹이 떠오른다. 저를 믿으십시오, 나는 틀렸다면 매우 기쁠 것입니다. 그러나 .....

 
Sergey Voytsekhovsky :

그런 순진한 질문에 대한 답은 너무 뻔해서 무심코 자기 홍보에 대한 의혹이 떠오른다. 저를 믿으십시오, 나는 틀렸다면 매우 기쁠 것입니다. 그러나 .....

아니요 - 처음으로 Signals 서비스 를 사용하기 시작했는데 ... 무엇을 볼 수 있습니까? 때때로 백분율이 그렇게 계산됩니다... 그리고 다음 주에 위젯에서 무엇을 기대해야 합니까? 또 0%???

나는 인지 부조화를 가지고 있습니다 - 여기서 한 가지를 볼 때 - 그리고 여기에서 다른 것을 볼 때 - 그러면 나는 무엇을 믿어야 할까요????

위젯에서 백분율을 계산하는 방법은 무엇입니까 ???

Торговые сигналы для MetaTrader 5
Торговые сигналы для MetaTrader 5
  • www.mql5.com
Выберите подходящую торговую систему и оформите на неё подписку в пару кликов. Замониторенные счета сопровождаются подробной статистикой и торговой историей. Посмотрите обучающий видеоролик о том, как подписаться на Сигнал...
 

업데이트 후 기능 작동이 중지됨

 ChartSetInteger ( 0 , CHART_BRING_TO_TOP , 0 , true )

0 차트로 전환되지 않습니다. 무엇이 잘못되었을 수 있습니까?

 void OnStart ()
  {
   long currChart,prevChart= ChartFirst ();
   int z= 0 ,limit= 100 ;
     while (z<limit)
     {
      currChart= ChartNext (prevChart);
       string __simvol= ChartSymbol (currChart);
       ENUM_TIMEFRAMES __period= ChartPeriod (currChart);
       if (currChart==- 1 )
        {
         __simvol= Symbol ();
         currChart= 0 ;
        };
         if (! ChartSetInteger ( currChart , CHART_BRING_TO_TOP , 0 , true ))
        {
         //--- выведем сообщение об ошибке в журнал "Эксперты"
         Print ( __FUNCTION__ + ", Error Code = " , GetLastError ());
         //return(false);
        };
       Print (currChart, "  " , __simvol);

       Sleep ( 2000 );
       if (currChart== 0 )
         { break ;};
     prevChart=currChart;
      z++;

     };
  }
 

도와주세요.

왼쪽 기호에서 시장가 주문의 가격을 찾는 방법은 무엇입니까?


고문의 예.

 #include <MT4Orders.mqh> // https://www.mql5.com/ru/code/16006

input int inTP = 100 ; // Размер тейка.

#define Bid SymbolInfoDouble ( _Symbol , SYMBOL_BID )
#define Ask SymbolInfoDouble ( _Symbol , SYMBOL_ASK )

void OnTick ()
{
   if (! OrdersTotal ()) // Если нет текущих ордеров
  {
     OrderSend ( _Symbol , OP_BUY, 0.1 , Ask, 0 , 0 , Ask + inTP * _Point );   // Купили с тейком.
     OrderSend ( _Symbol , OP_SELL, 0.1 , Bid, 0 , 0 , Bid - inTP * _Point ); // Продали с тейком.
  }
}


백테스트 결과.

표시된 0의 가격을 알아야 합니다. SL / TP에 관해서는 해설에서 얻을 수 있습니다. 그러나 시장 주문을 직접 만들 때(화면의 녹색 0이 아님) - 어디서 얻습니까?


이것은 미끄러짐을 평가하는 데 필요합니다. 예를 들어 터미널에서 좋은 가격이 표시되면 구매를 클릭합니다. 거래가 성사되었습니다. 클릭했을 때 터미널에 있던 거래 가격과 거래 가격이 얼마나 다른지 나중에 알고 싶습니다. MT5로는 가장 간단한 분석을 할 수 없는 것 같습니다!


또는 예를 들어 전문가 조언자의 결과에 대한 테스터의 지연 기능의 영향을 조사하려고 합니다. 이렇게하려면 미끄러짐이 무엇인지 평가해야합니다. 그리고 하지마. 더 정확하게는, 나는 할 수 없다.


문제는 MqlTradeRequest에서 0이 아닌 값으로 설정된 경우 시장가 주문의 가격을 찾는 방법입니다.

 
fxsaber :

문제는 MqlTradeRequest에서 0이 아닌 값으로 설정된 경우 시장가 주문의 가격을 찾는 방법입니다.

제한된 주식으로 시장을 고정 주식으로 교체하면 도움이되지 않습니까?

 
SEM :

업데이트 후 기능 작동이 중지됨

0 차트로 전환되지 않습니다. 무엇이 잘못되었을 수 있습니까?

비슷한 기능이 있습니다 - 차트의 템플릿 변경. 업데이트 전에는 모든 것이 잘 작동했지만 이제는 변경되지만 하나의 차트에서는 작동할 수 있습니다. 템플릿이 있는 여러 창

 //+------------------------------------------------------------------+
//| start function                                                   |
//+------------------------------------------------------------------+
void DeleteChart( void )
  {
   long currChart,prevChart= ChartFirst ();
   int i= 0 ,limit= 100 ;
   bool errTemplate;
   while (i<limit)
     {
      currChart= ChartNext (prevChart);
       if (TimeFrame!= PERIOD_CURRENT )
        {
         ChartSetSymbolPeriod (prevChart, ChartSymbol (prevChart),TimeFrame);
        }
      errTemplate= ChartApplyTemplate (prevChart,Template+ ".tpl" );
       if (!errTemplate)
        {
         Print ( "Error " , ChartSymbol (prevChart), "-> " , GetLastError ());
        }
       if (currChart< 0 )
         break ;
       Print (i, ChartSymbol (currChart), " ID =" ,currChart);
      prevChart=currChart;
      i++;
     }
  }
//+------------------------------------------------------------------+