MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 966

 
Alexey Viktorov :

그렇다면 일반적으로 이러한 samopisny 기능은 어떻습니까?

나는 어제의 최고가와 최저 가격 을 구하고 이 값에서 중간을 결정합니다.

몰라요...생각지도 못했는데...이번시간에 다시 써보겠습니다...그렇게 하면 더 쉽네요...감사합니다!

 
Igor Makanu :

자산 관리

이것은 완전한 최적화가 아니며 목표에 아직 도달하지 않았습니다. 보류 중인 주문은 무작위 항목으로 가격을 따릅니다. 최적화 프로그램에서 선택은 일반적으로 라인 공식 y=kx+b의 원칙을 기반으로 합니다. 안개 속에서-이것은 거의 그리드이지만 목표는 아직 달성되지 않았습니다.

작동할 것입니다. 제가 찾고 있는 것이 무엇인지 압니다. 포럼에 등록한 이후로 시장과 거래를 해왔습니다. 그러나 일반적으로 내 아이디어는 근로자의 요청에 따라 쓰기 전문가를 통과 한 1 년 동안 수집되었습니다 )) )

문제없어, 어서

나는 이미 이것을 겪었기 때문에 매우 분명합니다.
마찬가지로 모든 것이 일부 매개변수를 찾는 데 달려 있습니다(이 경우 최소한 선형 종속성 y=kx+b 또는 지수 y=ax²+kx+b에서 a,k,x에서 계수 k 및 b). 이 계수는 매번 틱마다 변경되어야 하므로 최적화가 프로그램 자체에 있어야 하고 자동으로 지속적으로 발생해야 하며 때때로 수동 모드(하루에 한 번, 일주일에 한 번 또는 월 ... ). 또한 관찰된 회귀가 선형 또는 포물선(지수)인 기간을 제어해야 합니다. 이 기간은 매 틱마다 변경되어야 합니다. 선이나 포물선을 찾는 것은 주어진 순간에 선형 또는 포물선 회귀의 최적 기간을 찾는 것과 동일하지만.
그러나 외부 테스터는 항상 테스트가 수행되는 과거 데이터 세트에만 적합하도록 보편적으로 보장되는 일정한 정적 매개변수를 선택할 수 있으며, 물론 이 이미 과거의 역사적 기간에 안정적인 수익이 보장될 것입니다. 관찰되고 아름다운 이익선이 그려지겠지만 우리는 현재와 미래가 필요합니다.

마찬가지로 모든 것은 채널 너비, 채널 길이, 채널 항복, 선형 또는 더 높은 수준의 채널의 항복 선으로의 흑백 제어에 달려 있습니다. 그리고 이것은 패턴 인식의 문제이며 외부가 아닌 내부에서만 해결해야 합니다.

 
Nikolai Semko :

나는 이미 이것을 겪었기 때문에 매우 분명합니다.

나도 한 번 이상

니콜라이 셈코 :

그러나 외부 테스터는 항상 테스트가 수행되는 과거 데이터 세트에만 적합하도록 보편적으로 보장되는 일정한 정적 매개변수를 선택할 수 있으며, 물론 이 이미 과거의 역사적 기간에 안정적인 수익이 보장될 것입니다. 관찰되고 아름다운 이익선이 그려지겠지만 우리는 현재와 미래가 필요합니다.

문제는 그렇지 않다는 것입니다. 모든 것이 테스트와 포워드와 같으며 그래프가 다르지만 경향이 있습니다. 내가 이해하는 한 지금 내 EA를 연구하고 있다는 생각에서 꽤 좋습니다. 그것은 미래 가격 자체에 빠지는 것이 아니라 정확히 미래 가격의 궤적에 속한다는 것입니다.

 
여러분, 이것은 질문입니다. 따라서 접두사 증분 ++q와 접미사 q++가 있습니다. 기능을 사용하면 다소 다르고 흥미로운 효과를 얻을 수 있습니다. 예를 들어 이 q++ 증분을 실행하는 우선 순위는 덧셈을 수행합니다. 직후가 아니라 어떻게 이것이 소수로 수행될 수 있으며, 예를 들어 그러한 추가 q + 5를 원하고 먼저 q를 사용한 다음 5를 추가해야 합니까?
 
Seric29 :
여러분, 이것은 질문입니다. 보세요, 접두사 증분 ++q와 접미사 q++가 있습니다. 이 기능을 사용하면 상당히 다양하고 흥미로운 효과를 얻을 수 있습니다. 예를 들어 이 q++ 증분을 실행하는 우선 순위는 추가 후기/백데이팅을 수행합니다. 직후가 아니라 어떻게 이것이 소수로 수행될 수 있으며, 예를 들어 그러한 추가 q + 5를 원하고 먼저 q를 사용한 다음 5를 추가해야 합니까?

글쎄, 당신이 그것을 루프 카운터로 사용한다면,

 for ( int q = 0 ; q <= 25 ; q+= 5 )
 
Alexey Viktorov :

글쎄, 당신이 그것을 루프 카운터로 사용한다면,

그리고 함수에 표현식 q + 5를 전달하고 먼저 q를 실행하고 5k를 더하면 이것은 불가능하지 않습니까?

 int q
void Funk( int pr){}
вызвов Funk(...q+ 5 ...) сначала используем q а после прибавляем 5
как здесь например Funk(q++) сначала используем q а после прибавляем 1
 
이 주제와 관련이 없는 주석은 " OOP, mql5의 템플릿 및 매크로, 미묘함 및 사용 기술 "로 이동되었습니다.
 
Seric29 :

그리고 함수에 표현식 q + 5를 전달하고 먼저 q를 실행하고 5k를 더하면 이것은 불가능하지 않습니까?

5는 상수인가요 변수인가요? 상수이면 문제가 없습니다. 함수에 q를 전달하고 사용 후 5를 더합니다. 변수인 경우 두 개의 변수를 전달하고 q를 사용한 후 두 번째 변수를 추가합니다. 또 다른 옵션은 전역 수준에서 변수를 선언하는 것입니다. 그러면 아무것도 보낼 필요가 없습니다.
 

안녕하세요. 이익이 =0일 때 다방향 포지션을 청산하고 싶습니다. 매수, 매도 포지션의 수, 로트의 물량이 다릅니다.

평균가, 즉 이익이 0인 시점에 대한 검색 기능의 설명으로 옳지 않은 것은?

 double AveroProf( string sy= "" , int op=- 1 , int mn1=- 1 ) 
   {
   int i= 0 ;
   int kol= 0 ;
   double lots= 0 ;
   double sum= 0 ;
   double sum1= 0 ;
   double zeroprice= 0 ;
   double tick_value;
   for (i= 0 ; i< OrdersTotal (); i++)
   {
       if (! OrderSelect (i,SELECT_BY_POS,MODE_TRADES)) continue ;
       if (OrderSymbol()!= Symbol ()) continue ;
       if (OrderMagicNumber()!=mn1) continue ;
       if (OrderType()==OP_BUY)
      {
       lots=lots+OrderLots();
       sum=sum+OrderLots()*OrderOpenPrice();
       sum1=sum1+OrderProfit()+OrderSwap()+OrderCommission()  ; 
      }
       if (OrderType()==OP_SELL)
      {
       lots=lots+OrderLots();
       sum=sum+OrderLots()*OrderOpenPrice();
       sum1=sum1+OrderProfit()+OrderSwap()+OrderCommission()  ;
       kol=kol+ 1 ;
      }
   
   }
   if (lots> 0 )
   { 
   zeroprice=sum/lots;
   zeroprice= NormalizeDouble (zeroprice, _Digits );
   zeroprice = ( MathRound (zeroprice* MathPow ( 10 , Digits )))/ MathPow ( 10 , Digits );
    }   
   return ( zeroprice);
   }
 
누군가 이 문제를 도와주세요: https://www.mql5.com/en/forum/322133
Как использовать WinApi для преобразования времени в StrategyTester MT5?
Как использовать WinApi для преобразования времени в StrategyTester MT5?
  • 2019.09.12
  • www.mql5.com
Я успешно создал CustomSymbol в MT5, и я получаю эту таблицу в приложении...