엘리엇 파동 이론에 기반한 거래 전략 - 페이지 76

 
중요한 점 - 객체가 생성되거나 그려지지 않습니까? 렌더링되지 않은 객체의 속성을 읽을 수 있습니까?
 
그리고 여기에 새로운 놀라움이 있습니다. 화살표를 그리는 것은 실행 시간을 변경하지 않으며 흥미롭습니다.
시간 - 4분 조금, 실제로 변경되지 않았습니다.

2006.07.08 19:35:45 HistoryChannells EURUSD,M30: 초기화 해제
2006.07.08 19:35:45 HistoryChannells EURUSD,M30: deinit() 실행
2006.07.08 19:35:45 HistoryChannells EURUSD,M30: 최적화된 알고리즘 시간 261281ms
2006.07.08 19:31:24 HistoryChannells EURUSD,M30: 초기화
2006.07.08 19:31:19 HistoryChannells EURUSD,M30: 성공적으로 로드됨
2006.07.08 19:31:11 'HistoryChannells' 컴파일 중
 
중요한 점 - 객체가 생성되거나 그려지지 않습니까? 렌더링되지 않은 객체의 속성을 읽을 수 있습니까?


개체가 생성됩니다. 특별히 확인하면 "보이지 않는" 화살표의 속성도 볼 수 있습니다. 코드는 다음과 같습니다.
 centerLR=BestChannels[0][2]*(lastBar-1)+BestChannels[0][3];

      ObjectCreate("위"+UpArrowCounter,OBJ_ARROW,0,시간[lastBar-1],centerLR+BestChannels[0][5]);
      ObjectSet("위"+UpArrowCounter,OBJPROP_ARROWCODE,158);
      ObjectSet("위쪽"+UpArrowCounter,OBJPROP_COLOR,빨간색);
      ObjectCreate("아래로"+DownArrowCounter,OBJ_ARROW,0,시간[lastBar-1],centerLR-BestChannels[0][5]);
      ObjectSet("아래로"+DownArrowCounter,OBJPROP_ARROWCODE,158);
      ObjectSet("아래로"+DownArrowCounter,OBJPROP_COLOR,빨간색);
      위쪽 화살표 카운터++;
      아래쪽 화살표 카운터++; 



그리고 여기 그림이 있습니다:

 
흠... 그건 내 버그야, 내일 확인해야겠어. 오늘은 충분 해.
 
예, 또한 이 코드를 확인할 수 있었습니다.
 (i=0; i<50000;i++) {
    obj_name = 나;
    ObjectCreate(obj_name,OBJ_TREND,0,시간[0],i,시간[1],i);  
    ObjectSet(obj_name, OBJPROP_STYLE, DRAW_NONE);
    j = ObjectGet(obj_name, OBJPROP_PRICE1);
    인쇄(j);
  } 
   
  (i=0; i<50000;i++) {
    obj_name = 나;
    ObjectDelete(obj_name);  
  } 
 


사진 이름은 라틴어로만 사용해야 하며 *.png 형식이 바람직합니다(gif는 이 포럼의 링크를 통해 표시되지 않음).


이렇게 하면 다 된 건데 에디터 창에 정상적으로 표시된다고 하는데, 추가나 저장 버튼을 누르는 순간 메시지를 추가하거나 변경하느냐에 따라 사라지고, 내가 입력한 것조차 사라진다. :(
 
좋아, 나는 다른 길로 갔다. (그들은 마침내 30초 동안 그곳에서 나를 보내기 시작했다. 비록 10분을 기다리는 것이 도움이 되지는 않지만 :() 하지만 아 글쎄, 나는 단지 지금 이 순간 내가 유대인들을 대하고 있다는 것을 보여주고 싶었다. 그리고 아마도 관련이 없을 것입니다
 
그리고 여기에 새로운 놀라움이 있습니다. 화살표를 그리는 것은 실행 시간을 변경하지 않으며 흥미롭습니다.

여기에 논의된 알고리즘을 시작하는 방법에 따라 실행 시간은 0 또는 16ms입니다. 어떤 경우에는 알고리즘이 연속적으로 실행되고 어떤 경우에는 중단되어 터미널의 전체 주기가 처리된다고 가정합니다(숫자가 일관되게 반복되기 때문에). 유추하여 - 계산이 끝난 후에는 드로잉을 할 수 없습니까?
 
블라디슬라프 02.06.06 11:26
실제 구현 또는 그 기반이 되는 방법에 관해서는 모든 것이 매우 간단합니다. 가장 좋은 방법으로 선택해야 하는 2차 함수의 계수가 있습니다. 회귀는 선형 또는 오히려 구성에 대한 추정치를 제공합니다. 따라서 Taylor 확장(2차 형식의 구성)에서 이 계수를 사용할 수 있는 범위(진폭 범위)를 추정할 수 있습니다. 또한 나머지 k-tov에 대해 스스로 생각하십시오. 그리고 위치 에너지의 최소값을 찾기 위해 가격 궤적을 알 필요는 없지만 알아야 할 더 중요한 것은 잠재적인 기울기입니다.). 즉, 제로 마크의 동적 상태 - 무언가를 제로 포텐셜로 간주해야 합니다. 그리고 이 모든 것이 평가하기에 충분합니다. 직접적인 차별화는 필요하지 않습니다.
비 유적으로 "손가락에"기하학적 이미지를 사용하는 경우:
표면(일부 거친 지형과 유사)에서 공이 굴러간다고 상상해 보십시오(이것이 가격입니다). 공 궤적의 매력 영역을 결정하기 위해 제조의 미묘함을 알 필요는 없습니다. 이 "거친 지형"의 속성을 아는 것이 훨씬 더 유용합니다.

블라디슬라프 14.06.06 21:06
아주 맞습니다. 나는 이것에 대해 썼습니다. 최소한의 잠재적 에너지 기능은 채널을 선택하는 기준 중 하나입니다. 그리고 이것은 가격 필드의 가능성의 속성이며 신뢰 구간에 맞는 모든 궤적이 주어진 확률에 대해 동등하다고 간주되어야 한다는 사실 때문에 (다시 반복하지만) 궤적 자체를 찾는 것이 아닙니다. 즉, 투영의 구성은 먼저 샘플 선택으로 축소된 다음 선형 대수로 축소됩니다.

33페이지에서 이미 내 생각을 썼던 제기된 주제에 이어, 이미 반복적으로 표명된 조건을 충족하는 일련의 연속 채널에서 최소한의 잠재적 에너지를 가진 채널을 찾는 것에 대한 또 다른 아이디어가 있었습니다. 선형 회귀 채널을 구성하면 무엇을 얻을 수 있습니까? 우리는 가격이 원하는 대로 움직일 수 있는 국경으로 제한된 영역이 있습니다. 충족된 유일한 조건은 이 채널의 가격이 경계를 넘지 않는다는 조건이었습니다. 또한 Vladislav는 신뢰 구간에 맞는 모든 궤적은 주어진 확률에 대해 동일한 것으로 간주되어야 한다고 말했습니다. 그런 다음 이동 중 가격이 2차 함수에 따라 움직일 수 있다고 가정합니다. 즉, 지정된 진술을 위반하지 않습니다. 더욱이 이 진술은 가격 필드가 잠재적이라는 가정에서 비롯됩니다. 즉, 임의의 순간(및 모든 샘플에 대해)에 대해 근사 포물선을 만들고 이 샘플을 기반으로 가격이 이 샘플에서 이동한 궤적을 가졌다고 말할 수 있습니다. 상대적으로 말하자면 이것은 포물선 모양의 경사 홈과 표면에 여러 불균일성을 가진 볼입니다. 이제 잠재적인 0의 동적 상태에 대해 무엇을 취할 수 있습니까? 그럼에도 불구하고 볼은 조건부 경사 포물선 홈을 따라 이동하면서 채널의 시작 부분에서 끝까지 굴러 내려갔기 때문에 이 홈의 최소 위치 에너지는 물론 현재 시간에서 이 홈의 궤적에 있고, 따라서 현재 순간의 공(가격)에 힘(전위 기울기)이 작용하여 공을 포물선 홈의 궤적으로 이동시키는 경향이 있습니다. 이제 이 그라디언트의 크기와 방향을 찾는 방법은 무엇입니까? 그것은 매우 간단합니다. 우리는 최소 제곱법을 사용하여 포물선을 찾은 다음 현재 가격과 이 포물선(최소 잠재력)의 차이를 찾습니다. 물론 이 차이는 긍정적일 수도 있고 부정적일 수도 있습니다. 또한, 우리가 선택한 선형 회귀 채널이 예측에 가장 적합한 "참"이어야 하기 때문에 샘플에는 이미 알려진 수렴 조건(RMS<RMS2/3) 외에도 다음과 같은 몇 가지 조건이 있어야 합니다. 이 수렴을 확인하는 다른 조건. Vladislav가 기능적 위치 에너지의 최소값에 대해 언급한 것은 이를 위해 볼이 따라가는 포물선 근사 홈을 만드는 채널에 대해 잠재적 기울기의 합이 가능한 한 작아야 한다고 생각하게 했습니다. 우리의 교차 지형에 대한 가장 좋은 설명입니다. 당연히 나는 즉시 이 가정을 실제로 테스트하고 이 링크에서 결과를 공유하려고 시도했습니다. https://c.mql5.com/mql4/forum/2006/07/min_poten_energy.zip

이 차트에서 무엇을 볼 수 있습니까? 우리는 현재 Expert Advisor에서 사용하는 시리즈의 최소 표준 편차 방법을 사용하여 구축된 선형 회귀 채널을 봅니다. 별도의 그래프에는 현재 샘플에 대해 구성된 포물선에 대한 볼 전위 기울기의 대수(즉, 기호(+/-)를 고려하여 기울기를 합산) 합계의 그래프가 그려집니다. 이해의 편의를 위해, 근사 선형 회귀 채널 대신 포물선(2차 함수)을 취하고 포물선 자체를 사용한다는 차이점이 있는 허스트 계수를 결정하는 데 사용되는 것과 완전히 동일한 접근 방식이 여기에서 사용되었다고 말할 수 있습니다. 전위 기울기를 구하는 계산된 막대를 포함하여 전체 현재 샘플에 대해 구축됩니다. 만일을 대비하여 Hurst 계수를 검색하기 위해 현재 막대가 포함되지 않은 샘플을 취했음을 상기시켜 드리겠습니다.
파란색 수직선은 바로 이 막대에서 시작하는 채널에 대한 잠재적 기울기의 대수적 합에 대한 로컬 최소값을 나타냅니다. EURUSD 및 USDCHF 차트를 자세히 보면 현지 최저가(+/-1 bar)가 가격의 현지 최고/최저와 정확히 일치한다는 것을 알 수 있습니다. 나는 샘플 준비의 특성에 1 bar의 오류를 돌립니다. 나는 샘플로 막대 값(O+H+L+C)/4를 선택합니다. 아마도이 경우 최소한의 위치 에너지로 채널을 결정할 때 오류를 명확하게 제거하는 High 또는 Low를 선택적으로 선택적으로 선택해야 할 것입니다. 그런 다음 시리즈의 채널은 Vladislav가 USDCHF에 대해 이전에 제공한 그림에 표시된 채널과 정확히 일치합니다. 글쎄, 나는 내 Expert Advisor에서 이 가정을 구현하려고 노력할 것이다. 블라디슬라프가 사용하고 공유한 채널 선택 방식에 진지하게 다가가는 것 같아요.

추신: 그라디언트의 대수적 합 모듈 이 그래프에 표시됩니다(명확성을 위해). 현재 막대의 잠재적 기울기를 계산하기 위해 계산된 막대 자체를 포함하여 채널 시작부터 현재 막대까지 선택 항목에 대한 포물선을 만듭니다. 즉, 100개의 막대 샘플이 있는 경우 97개의 포물선을 계산해야 합니다. 최소 제곱법을 사용하여 포물선을 작성하려면 최소 4개의 판독값이 필요하기 때문입니다(저는 이것을 오늘 실험적으로 발견했습니다 ;o) ). 따라서 처음 3개 막대의 전위 기울기를 0과 동일하게 받아들입니다. Rosh , 여기에서 포물선 계산이 선형 회귀 채널 계산보다 몇 배 더 많은 시간이 걸리기 때문에 계산 알고리즘을 자유롭게 최적화할 수 있을 것이라고 생각합니다. o))).
 
А вот и новый сюрприз - рисование стрелочек не меняет времени прогона, это интересно.

여기에 논의된 알고리즘을 시작하는 방법에 따라 실행 시간은 0 또는 16ms입니다. 어떤 경우에는 알고리즘이 연속적으로 실행되고 어떤 경우에는 중단되어 터미널의 전체 주기가 처리된다고 가정합니다(숫자가 일관되게 반복되기 때문에). 유추하여 - 계산이 끝난 후에는 드로잉을 할 수 없습니까?



이 링크에서 - "MQL4, MQL2, EasyLanguage, Wealth-Lab 3.0 및 VC++: 속도 비교" - Renat 작성


레나트 14.01.05 14:18

GetTickCount(); 많은 측정 결과가 안정적인 +/- 약간의 작은 델타라면 테스트의 정확성을 확인합니다.


예, GetTickCount()의 정확도가 10ms에서 16ms로 점프하고 짧은 기간을 측정할 수 없지만 우리의 경우에는 사용이 정당합니다. 특히 거의 모든 코드에서 쉽게 접근할 수 있는 경우에 더욱 그렇습니다.