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

 
Maxim Dmitrievsky #:
다른 방법과 결합하면 무언가를 할 수 있습니다.
어떻게요?
 
mytarmailS #:
무슨 일이에요?
아직 안 했어요. 로직이 복잡해서 어디에 넣어야 할지 고민 중이에요.
 

제가 받은 신호입니다. 기준이 가까운 소수점 단위로 증가하므로 상관 관계가 있습니다.


공식 예시입니다: 가격 - MA(n) * std(n) * coef, 여기서 MA와 std는 임의 주문의 이동 평균과 표준 편차, 평준화 계수이며 클수록 계열이 더 고정되어 있습니다. 이 경우 50000입니다.

어떤 이유에서인지 내 MO는 증분보다 안정성을 더 잘 보여줍니다.

보다 안정성을 더 잘 보여줍니다.

분수 차이와 비슷한 것으로 밝혀졌지만 즉시 계산됩니다.

누군가 다른 옵션을 생각할 수 있을지도 모르겠습니다.

 
Maxim Dmitrievsky #:

제가 받은 신호입니다. 상관관계가 있는 이유는 기준이 가까운 단위의 증분이기 때문입니다.

이 곡선은 일반적으로 어떤 의미인가요?

막심 드미트리예프스키 #:

누군가 다른 옵션을 생각해낼 수도 있습니다.

여기, 기호 회귀가 구출되었습니다.

 
mytarmailS #:

그나저나 커브볼은 왜 저러는 건가요?

글쎄요, 상징적 회귀가 구해줄 겁니다.

공식이 작성되었습니다.
cf를 사용하여 따옴표를 고정 계열에 더 가깝게 만드는 방법의 변형을 제안하세요.
 
Maxim Dmitrievsky #:
공식은 다음과 같이 작성됩니다.
인용문을 고정 계열에 더 가깝게 만드는 방법의 변형을 제안합니다.

SR이 없는 더 간단한 예를 보여드리겠습니다.

 
mytarmailS #:

SR이 없는 간단한 예시를 보여드리겠습니다.

여기서는 하나의 변형만으로는 할 수 없으며 속성을 구성하고 이를 확인하고 훈련해야 합니다.

그러나 표지판은 어리석은 것이 아니라 적어도 어떻게 든 의미가 있습니다.
 
Maxim Dmitrievsky #:

SR을 사용하면 코딩과 계획에 더 많은 시간이 걸리므로 단순성, 속도 및 명확성을 위해 간단하게 만들었습니다.

실시간으로 공식을 만드는 대신 '공식 결과'인 곡선을 만든 다음 이를 모델의 목표로 사용합니다.


가격과 모델 결과 사이의 상관관계를 최대화하는 적합도 함수를 만들지만, 모델 결과에는 -1에서 1 사이만 가능하다는 한계가 있습니다.

즉, 가격과 상관관계가 있어야 하지만 통계적 값의 한계 내에서 "고정"된 계열을 얻게 됩니다. 디키 풀러 등에 따라 실제 통계성이 필요한 경우 적합도 함수를 필요한 값으로 변경하면 됩니다.



데이터를 생성하고 유전학으로 모델을 훈련합니다.

par(mar=c(2,2,2,2))
#  для простоты Создаю цену 
P <- cumsum(rnorm(300))
plot(P,t="l")

hankel <- function(x,n) embed(x, n)[ ,n:1]
#  Создаю данные для обучения Х ,скользящее окно виде матрицы
X <- t(apply(hankel(P,11),1,function(x) cumsum(diff(x))))
P <- tail(P,nrow(X))

#  Делаю разметку индексов для трейн и тест и валидации
tr <- 1:100
ts <- 1:200
al <- 1:nrow(X)

library(randomForest)
#  Создаю фитнес сункцию , подбираем генетикой для фореста такой таргет чтобы 
#  на выходе был максимально коррелированый с ценой ряд
fit <- function(Y){
set.seed(123)
rf <- predict(  randomForest(Y~.,X[tr,],ntree=100) ,   X[ts,])
return( cor(rf, P[ts]) )}

library(GA)
GA <- ga(type = "real-valued", 
         fitness =  fit,
         lower = rep(-1,100), 
         upper = rep(1,100), 
         popSize = 100,
         maxiter = 100,
         run = 40)
plot(GA)
GA_Y <- tail(GA@solution,1)[1,]

모델을 테스트합니다.

#  Получаем нашу модель которая делает то что нужно
set.seed(123)
rf <- predict(  randomForest(GA_Y~.,X[tr,],ntree=100) ,   X[al,])

layout(1:2)
plot(P,t="l",main="original price") ; abline(v=c(100,200),lty=2,col=c(3,4))
plot(rf,t="l",main="model out") ; abline(v=c(100,200),lty=2,col=c(3,4))
abline(h=0,col=3,lty=3)

layout(1:2)
plot(P,t="l",main="original price") ; abline(v=c(100,200),lty=2,col=c(3,4))
plot(cumsum(rf),t="l",main="model out cumsum") ; abline(v=c(100,200),lty=2,col=c(3,4))

세로줄은 훈련, 테스트, 검증을 구분한 것입니다.


그림에서 볼 수 있듯이 모델은 가격을 입력으로 받아들이는 법을 학습했고, 출력은 가격과 상관관계가 있는 통계 계열입니다.

더 명확하게 하기 위해 모델 출력의 누적 합계를 만들 수 있습니다.


다음과 같이 )))) 그리고 아무것도 만들 필요가 없으며 모든 것이 자동으로 수행됩니다.

 
mytarmailS #:

SR을 사용하면 코드와 계획에 더 많은 시간이 필요하므로 단순성, 속도, 명확성을 위해 더 단순하게 만들었습니다.

실시간으로 수식을 만드는 대신 '수식 결과'인 곡선을 만든 다음 이를 모델의 타깃으로 사용합니다.


가격과 모델 결과 사이의 상관관계를 최대화하는 적합도 함수를 만들지만, 모델 결과에는 -1에서 1 사이만 가능하다는 한계가 있습니다.

즉, 가격과 상관관계가 있어야 하지만 통계적 값의 한계 내에서 "고정"된 계열을 얻게 됩니다. 디키 풀러 등에 따르면 실제 통계적 유의성이 필요한 경우, 적합도 함수를 필요한 값으로 변경하기만 하면 됩니다.



데이터를 생성하고 유전학으로 모델 훈련하기

모델 검증

수직선은 훈련, 테스트, 검증을 구분한 것입니다.


그림에서 볼 수 있듯이 모델은 가격을 입력으로 사용하는 방법을 학습했으며, 출력은 가격과 상관관계가 있는 통계적 계열입니다.

더 명확하게 하기 위해 모델 출력에서 누적 합계를 만들 수 있습니다.


다음과 같이 )))) 그리고 아무것도 생각할 필요가 없습니다. 모든 것이 기계에서 수행 될 수 있습니다.

흥미 롭군요, 나중에 생각해 보겠습니다. 오늘은 피 묻은 마리아라서 생각하기가 어렵습니다.
 
Maxim Dmitrievsky #:
흥미 롭군요, 나중에 생각해 보겠습니다. 오늘은 피의 메리를 먹고있어 생각하기가 어렵습니다.

파이썬으로 몇 줄이면 될지 궁금하네요.....

아마 µl로 수천 줄일 겁니다))))))))))))))))))))))))))))

사유: