EA N7S_AO_772012 - 페이지 30

 
SHOOTER777 >> :

하지만

불행히도이 관찰은 유감 스럽습니다 .. 또한 주목 ..

 

SHOOTER는 정확히 매개변수 그룹이 최적화하는 것을 간략하게 설명할 수 있습니다.

  • 엑스
  • 와이
  • 엑스
  • 와이
부분적으로는 이해하겠지만 아직 머리로는 전체 그림을 상상할 수 없습니다.
 

여기에 또 다른 이상한 점이 있거나 그냥 결함이 있습니다.

 double BTS ( ) {
	if ( ( prcptrnz1 ( ) > 0 | | F = = 0 ) & & bu < HM_Up_X ) {
		if ( prcptx1 > 0 & & Delta_G12 > 0 ) {
			sl = slx ; 
			tp = tpx * slx ; 
			mn = mnx1 ; 
			return ( 1 ) ;
		}
	} 
	if ( ( prcptrnz1 ( ) < 0 | | F = = 0 ) & & sll < HM_Dn_Y ) {
		if ( prcpty1 > 0 & & Delta_G12 < 0 ) {
			sl = sly ; 
			tp = tpy * sly ; 
			mn = mny1 ;
			return ( - 1 ) ;
		}
	}
	return ( 0 ) ;
}

이제 F == 0이고 열린 위치 가 전혀 없으면 먼저 첫 번째 블록에 들어간 다음 두 번째 블록에 들어갈 수 있습니다. 그러면 잘못된 결과가 나옵니다.

아니면 내가 뭔가를 이해하지 못하고 있습니까?

 

아마도 아닐지라도. 우리는 두 블록을 동시에 다루지 않을 것입니다. 왜냐하면

Delta_G12

허용하지 않습니다.

 
ShestkoFF писал(а) >>

나는 효과가 있는 것을 비판하는 것을 좋아하지 않는다. 코드에 대한 몇 가지 비판을 드리겠습니다.

Spsb. 나는 비판을 비판이 아니라 행동의 지침으로 인식한다. 아직도 읽다 MQL 에 대한 최소한의 가이드

  • 코드를 읽는 것은 불가능하기 때문에 모든 것을 한 줄로 작성할 필요는 없습니다.

그것은 받아들여지지만, 이미, 아마도 미래의 작품에서. 이 "필기"는 다른 보다 글로벌한 프로젝트 후에도 제 12인치 모니터의 작은 해상도 때문에 계속 남아 있었습니다. 당신의 버전은 의심할 여지 없이 더 좋아 보이지만 목록을 앞뒤로 계속 스크롤해야 할 것입니다. 그러나 나는 나 자신을 위해 여기에 있지 않기 때문에 반복합니다 - 나는 그것을 고려할 것입니다.

  • 의미 있는 이름 변수

찾다! 내 이름이 마음에 들지만 GOELRO, OBKhSS, IMHO 등의 약어에 익숙하기 때문에 익숙해 질 필요가 있습니다. 자세히 보면 일부 변수에는 다소 의미 있는 이름을 붙였지만 모음은 모두 줄였습니다.

  • 변수가 로컬이면 전역 변수로 만들지 마십시오.

아직 변수를 파악하지 못했습니다. 코드를 처음부터 작성할 때 어떤 변수가 어디에 있는지 알 수 없으므로 거의 모든 전역 변수가

  • 전역 변수를 정적으로 만들지 않는 것은 의미가 없습니다. 그렇지 않은 경우 설명하십시오.

경험적으로 이것은 그렇지 않습니다. 내가 "달린"위치를 기억합니다. 설명하겠습니다. 기능에있는 것 같습니다. 부슬()

  • 언어에 정의된 표준 상수를 사용하십시오. 예를 들어, 시간 간격을 지정합니다. 이중 iA_C(int pr){int tmfr=60; return(iAO(Symbol(), tmfr, pr));} double iA_C (int pr){return(iAO(Symbol(), PERIOD_H1, pr));} 로 대체하는 것이 낫다고 생각합니다.

동의합니다. 다시 수정합니다. 블록을 처음부터 작성할 때 함수에 어떤 매개변수를 전달할지 아직 모르고 눈이 "흐리게"됩니다. 그리고 당신은 그러한 "작은 것들"에주의를 기울이지 않습니다))

 
ShestkoFF писал(а) >>

SHOOTER는 정확히 매개변수 그룹이 최적화하는 것을 간단히 설명할 수 있습니다.

  • 엑스
  • 와이
  • 엑스
  • 와이
부분적으로는 이해하겠지만 아직 머리로는 전체 그림을 상상할 수 없습니다.

고문의 주요 추진력 및 안내력은 악명 높은)) 기능 G12 (). 선호하는 거래 방향은 지표에 의해 계산됩니다. 그러나 한 방향으로는 충분하지 않으며 진입점이 필요합니다. "클래식"에서 하나의 기간이 패턴 또는 외부 매개변수가 있으면 표시기 자체가 조정되고, 둘 이상이 있으면 최적화도 수행됩니다. 나는 나를 위해 또 다른 아직 새로운 방법을 적용하려고 NN

여기 이것 기능

이중 prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)

{더블 qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C (하나);

if (MathAbs(qw)>at) return(qw);else return(0);}

일종의 퍼셉트론이 호출되고 수신하도록 설계되었습니다.... 무엇. 여기에는 많은 질문에 대한 몇 가지 답변이 자세히 나와 있으며, 내가 답변하는 것보다 낫습니다 . '수익성 있는 거래 전략 찾는 방법' 그리고 신경망을 위한 조리법 . 사실, 나는 그것을 대각선으로 읽었고 다른 사람들의 작품을 연구함으로써 더 흥미로운 것을 얻었습니다. 아래를 참조하십시오.

이 전문가 고문은 "기반으로 생성" MTS "신경망 + MACD" 작성자: Batohov , MTS "Combo" , "Combo_Right" 및 AI 작성자: Reshetov , PROphet 작성자: PraVedNiK , " RSI_Test " 작성자: zerkmax , auto_optimization.mqh 작성자 : 이고르 말체프 외.

 
ShestkoFF писал(а) >>

여기에 또 다른 이상한 점이 있거나 그냥 결함이 있습니다.

이제 F == 0이고 열린 위치가 전혀 없으면 먼저 첫 번째 블록에 들어간 다음 두 번째 블록에 들어갈 수 있습니다. 그러면 잘못된 결과가 나옵니다.

아니면 내가 뭔가를 이해하지 못하고 있습니까?

F ==0은 Delta_G12 외에 Trd_Up_X 및 Trd_Dn_Y도 분리된 최적화의 처음 두 단계에서만 0입니다.

최적화 세트 파일을 순차적으로 사용하여 6단계를 모두 통과하면 작동 중 F는 항상 1과 같아야 합니다.

하지만 코드를 살펴보는 동안 또 다른 오류를 발견했습니다. 그렇기 때문에 최신 버전이 더 나빠지는 것을 보는 것입니다. 이 버그는 버전 7과 9에 들어왔습니다.

아무도 눈치 채셨나요?

 
SHOOTER777 >> :

여기 이것 기능

이중 prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)

{더블 qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C (하나);

if (MathAbs(qw)>at) return(qw);else return(0);}

일종의 퍼셉트론이 호출되고 수신하도록 설계되었습니다.... 무엇.

그리고 이것은 여전히 나에게 신비한 기능입니다. 아니요, 나는 그녀가 무엇을 하고 왜 하는지 확실히 이해합니다. 그러나 공식 자체는 다소 이례적입니다.
뉴런 작업의 결과는 뉴런의 입력 수에 이러한 입력의 가중치를 곱한 것이어야 합니다.
즉, 논리적으로 다음과 같은 것이 있어야 합니다.

double qw = (q1-50) * iA_C(1) + (q2-50) * iA_C(pr) + (q3-50) * iA_C(2 * pr) + (q4-50) * iA_C(3 * pr)

둘 다 최대값(결과 균형)을 찾는 것과 관련된 4개 변수(또는 8개?)의 일부 기능이라는 것이 분명하지만 여전히 이상합니다. :)

 
ShestkoFF писал(а) >>

그리고 이것은 여전히 나에게 신비한 기능입니다. 아니요, 나는 그녀가 무엇을 하고 왜 하는지 확실히 이해합니다. 그러나 공식 자체는 다소 이례적입니다.
뉴런 작업의 결과는 뉴런의 입력 수에 이러한 입력의 가중치를 곱한 것이어야 합니다.
즉, 논리적으로 다음과 같은 것이 있어야 합니다.

double qw = (q1-50) * iA_C(1) + (q2-50) * iA_C(pr) + (q3-50) * iA_C(2 * pr) + (q4-50) * iA_C(3 * pr)

둘 다 최대값(결과 균형)을 찾는 것과 관련된 4개 변수(또는 8개?)의 일부 기능이라는 것이 분명하지만 여전히 이상합니다. :)

최소한 내가 이해하는 한 단순화 된 버전의 기능을 제공했습니다.

여기에서 논의 중입니다

'MTC 콤보'

"솔직히 이것은 가장 순수한 형태의 신경망이 아닙니다. 첫째, 그것 없이는 임계값이 충분하지 않고 NN의 분리 능력이 훨씬 적습니다. 둘째, IMHO, 출력 활성화 임계값을 추가할 가치가 있습니다. 이것이 의미하는 바는 임계값이 활성화를 초과한 경우에만 거래하도록 신호를 반환합니다. 예:

이중 해상도 = ( w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4 // )/닫기[0] - T) ; // Close[0] 으로 나누어 통합
if
( MathAbs ( res ) > ActivityThreshold ) return ( res ) ; // ActivityThreshold -- 활성화 임계값

 
gorby777 писал(а) >>

초기 버전에서 Close(0)은 퍼셉트론 공식 z1에 사용되었으며 Close(1)은 7 및 9 버전에서 사용되었습니다. 우리는 이것에 대해 이야기하고 있습니까?

아니요, 성형 바에 작업하는 규칙이 있기 때문에 이것이 때문이 아니라고 생각합니다.

그러나 플래그 Flq=false라는 사실; 구매 및 판매에 대한 하나는 이러한 무역 영역의 분리에 큰 영향을 미치므로 결과에 영향을 미칩니다.