트레이딩의 머신러닝: 이론, 모델, 실전 및 알고리즘 트레이딩 - 페이지 143

 
블라디미르 페레르벤코 :

여기 다음 분기에서 나는 MKL4/5에서 R 언어의 운명에 대해 Renat과 논의 했습니다. 이제 MKL의 솔루션과 개발 방향이 명확해졌습니다.

행운을 빕니다

읽었습니다 거기에 아무 것도 쓰고 싶지 않습니다. 사람이들을 준비가되어 있지 않으면 그를 설득 할 것이 없습니다. 사람이 오랫동안 작성된 100-1000 줄의 코드를 작성하려는 경우, 이것은 그의 권리이지만 R에서 한 줄로 동일하게 수행하고 싶습니다.

그건 그렇고, 당신은 어떤 종류의 도전을 할 수 있고 통계를 사용하여 어떤 종류의 사소하지 않은 작업을 할 수 있습니다. 메소드와 일부 모델의 후속 교육 및 유효성 검사를 수행하고 R 및 mql5 + alglib에서 구현하고 코드 크기를 어리석게 비교합니다...

 
블라디미르 페레르벤코 :

여기 다음 분기에서 나는 MKL4/5에서 R 언어의 운명에 대해 Renat과 논의 했습니다. 이제 MKL의 솔루션과 개발 방향이 명확해졌습니다.

행운을 빕니다

해당 스레드를 읽지 않은 사람들을 위해 mql에서 R로의 직접적인 인터페이스는 이제 기대되지 않습니다. 그러나 mql에 이식된 Alglib 라이브러리에 액세스할 수 있으므로 mql 코드 자체에서 나무나 뉴런을 구축하고 유전학으로 무언가를 최적화하고 최소/최대 기능에 대한 매개변수를 찾을 수 있습니다. 모든 기능 - http://www.alglib.net

 
블라디미르 페레르벤코 :

여기 다음 분기에서 나는 MKL4/5에서 R 언어의 운명에 대해 Renat과 논의 했습니다. 이제 MKL의 솔루션과 개발 방향이 명확해졌습니다.

행운을 빕니다



추세는 분명합니다. MT4 P와 친구가 될 수 있습니다. 그리고 MT 4는 여전히 매우 일반적입니다. 그리고 P에서 좋은 종속성을 포착하면 동일한 매개변수를 사용하여 MT5용 라이브러리에서 모델을 쉽게 훈련할 수 있습니다.

 

관측값이 있는 행렬 `"P"`가 있습니다(줄 단위). 각 줄에 대해 `hist()`를 통해 분포를 계산합니다.


휴식 - 50 배팅


A <- hist(P[n,],breaks = 50,plot = F)


그러나 행렬 `A$breaks`의 각 행에서 `"P"`의 모든 행 길이가 동일함에도 불구하고 `A$breaks`를 만드는 방법은 항상 같은 크기

 

하나의 숫자가 나누기에 주어지면 결과는 그것에 가까울 것이지만 반드시 그런 것은 아닙니다.

정확한 일치를 위해서는 미리 최소값과 최대값을 계산하고 매개변수에 자신의 벡터를 제출하는 것이 좋습니다
A <- hist(P[n,],breaks = c(10:60),plot = F)

 
Dr.Trader :

하나의 숫자가 나누기에 주어지면 결과는 그것에 가까울 것이지만 반드시 그런 것은 아닙니다.

정확한 일치를 위해서는 미리 최소값과 최대값을 계산하고 매개변수에 자신의 벡터를 제출하는 것이 좋습니다
A <- hist(P[n,],breaks = c(10:60),plot = F)


시도했지만 어떤 이유로 erorit

> A <- hist(P[ 1 ,],breaks = с( 10 : 60 ),plot = F)
Error in hist. default (P[ 1 , ], breaks = с( 10 : 60 ), plot = F) : 
  could not find function "с"
> A <- hist(P[ 1 ,],breaks = 10 : 60 ,plot = F)
Error in hist. default (P[ 1 , ], breaks = 10 : 60 , plot = F) : 
  some 'x' not counted; maybe 'breaks' do not span range of 'x'
 

첫 번째 실수에 관해서는 - 영어 c 대신 러시아어 c를 입력 한 것 같습니다 :) 이제 위의 게시물을 수정했습니다.

두 번째 오류는 P[1,]이 10보다 작거나 60보다 큰 값을 포함한다는 것입니다. P[1,]의 모든 값을 포함하도록 나누기를 선택해야 합니다.

 
트레이더 박사 :

첫 번째 실수에 관해서는 - 영어 c 대신 러시아어 c를 입력 한 것 같습니다 :) 이제 위의 게시물을 수정했습니다.

두 번째 오류는 P[1,]이 10보다 작거나 60보다 큰 값을 포함한다는 것입니다. P[1,]의 모든 값을 포함하도록 나누기를 선택해야 합니다.


불행히도 나는 이해하지 못한다

여기 가장 간단한 예가 있습니다

rn <- rnorm( 100 )
H <- hist(rn, breaks = 50 , plot = F)
length(H$breaks)

그것이 무엇이며 어떻게 length(H$breaks)를 항상 50으로 만들 수 있습니까?

 

먼저 rn에서 최소 수를 결정해야 합니다. -4라고 합시다. 그런 다음 가능한 최대 수: +4

히스토그램이 -4에서 +4 범위에 있도록 함수를 호출하는 가장 간단한 방법:
H <- hist(rn, break = c (-4:4) )

오류가 있는 예:
H <- hist(rn, break = c
(-1:1) )
break는 -1에서 1로 제한됩니다. 즉, rnorm()이 -1보다 작거나 +1보다 큰 숫자를 반환하면 hist()에서 오류가 발생합니다.

다음으로, 벡터의 총 길이가 50이 되도록 -4에서 +4 사이의 숫자로 벡터를 생성해야 합니다. 이것은 seq() 함수에 의해 수행됩니다.
seq(-4, 4, length.out=50)

글쎄, 원칙적으로 모든 것은 히스토그램에서 seq ()의 결과를 사용해야합니다
H <- hist(rn, 중단 = seq(-4, 4, length.out=50) )

 
트레이더 박사 :

먼저 rn에서 최소 수를 결정해야 합니다. -4라고 합시다. 그런 다음 가능한 최대 수: +4

히스토그램이 -4에서 +4 범위에 있도록 함수를 호출하는 가장 간단한 방법:
H <- hist(rn, break = c (-4:4) )

오류가 있는 예:
H <- hist(rn, break = c
(-1:1) )
break는 -1에서 1로 제한됩니다. 즉, rnorm()이 -1보다 작거나 +1보다 큰 숫자를 반환하면 hist()에서 오류가 발생합니다.

다음으로, 벡터의 총 길이가 50이 되도록 -4에서 +4 사이의 숫자로 벡터를 생성해야 합니다. 이것은 seq() 함수에 의해 수행됩니다.
seq(-4, 4, length.out=50)

글쎄, 원칙적으로 모든 것은 히스토그램에서 seq ()의 결과를 사용해야합니다
H <- hist(rn, 중단 = seq(-4, 4, length.out=50) )

대단히 감사합니다. 그렇지 않으면 이 계량 경제학에서 호황을 누리지 못할 것입니다.

그것이 밝혀진 것처럼

rn <- rnorm( 100 )
Max <- max(rn)
Min <- min(rn)
range.vector <- seq(Min, Max, length.out= 50 )
H <- hist(rn, breaks = range.vector)
length(H$breaks)

[1] 50

사유: