トレーディングにおける機械学習:理論、モデル、実践、アルゴトレーディング - ページ 3042

 

データからいくつかの「良い」ルール/戦略を抽出する...

全ステップ

1) データの変換と正規化

2) モデルのトレーニング

3) ルール抽出

4) ルールのフィルタリング

5) 可視化

コードを用意し、データを代入するだけである。

close <- cumsum(rnorm(10000,sd = 0.00001))+100
par(mar=c(2,2,2,2))
plot(close,t="l")

sw <- embed(x = close,dimension = 10)[,10:1] #  make slide window data
X <- t(apply(sw,1,scale)) #  normalase data

dp <- c(diff(close),0) #  diff prices
Y <- as.factor( ifelse(dp>=0,1,-1) ) #  target for classification

tr <- 1:500
library(inTrees)  # ?inTrees::getRuleMetric()
library(RRF)

rf <- RRF(x = X[tr,],y = Y[tr],ntree=100)
rule <- getRuleMetric(unique(extractRules(RF2List(rf),X[tr,])),X[tr,],Y[tr])
rule <- data.frame(rule,stringsAsFactors = F)
for(i in c(1,2,3,5)) rule[,i] <- as.numeric(rule[,i])
buy_rules <- rule$condition[ rule$pred==1 ]

plot(x = 1:1000,y = rep(NA,1000), ylim = c(-0.001,0.001)) 
for(i in 1:length(buy_rules)){
   cum_profit <- cumsum( dp[  eval(str2expression(buy_rules[i]))  ] )
   lines(cum_profit,col=8,lwd=1)
}
for(i in 1:length(buy_rules)){
  cum_profit <- cumsum( dp[  eval(str2expression(buy_rules[i]))  ] )
  ccor <- cor(cum_profit, 1:length(cum_profit))
  if(ccor>=0.9)  lines(cum_profit,col=i,lwd=2)
}
abline(h = 0,col=2,lty=2)



疑問なのは、もしランダムで "働くTC "を見つけることができたとして、実際のデータで見つかったTCがランダムではないことを証明する方法はあるのだろうか?

アレクセイはここでそれをやっているが、この種のタスクのための統計的検定があるのだろうか?

 
chatgptに聞くと、人間よりも有益な答えが返ってくることが多い :)

プロンプトだけでボットを ゼロから書くという実験をしてみたい。
 
Maxim Dmitrievsky ボットを ゼロから書くという実験をしてみたい。

なぜですか?リリスに勝つため?とはいえ、何を...............I'd like to))))))))))))))))))))))))巧みな手にかかると、実にクールな道具だ(笑)。

 
Valeriy Yastremskiy #:

どうして?リリスを出し抜くため?リリスに勝つため?sya))))。正しい使い方をすれば、本当にクールなツールだよ。)

プログラミングのメタレベルだし、それに彼女はパイソンを完璧に知ってる。私はソファに寝転がりながら、声でプロンプトを出すこともあります。アイデアはあるんだけど、またこのコードを書くのが億劫になることがよくあるんだ :)。
 
Maxim Dmitrievsky #:
メタレベルのプログラミングで、しかも彼女はパイソンを完璧に知っている。ソファに寝転がりながら音声でプロンプトを出すこともあります。アイデアはあるんだけど、またこのコードを書くのが億劫になることがよくあるんだ :)

そうだね、正しい質問はメタレベルだね。)

まあ、コード実行の正しさをチェックすることだ))
 
Valeriy Yastremskiy #:

私は同意する、適切に提起された質問はメタレベルである))))

まあ、そしてコード実行の正しさをチェックする)
口を動かさなくていいように、ニューラル・インターフェースをくれ。
 
劣化だと思う
 
mytarmailS #:

データからいくつかの "良い "ルール/戦略を抽出する...

フルステップ

1) データの変換と正規化

2) モデルのトレーニング

3) ルール抽出

4) ルール・フィルタリング

5) 視覚化

すぐに使えるコード、データを置き換えるだけ



問題は、もしランダムで "働くTC "を見つけることができるのであれば、実際のデータで見つかったTCがランダムでないことを どのような方法で証明 できるかということだ。

アレクセイはここでそれをやっているが、この種のタスクに対する統計的検定が あるのだろうか?

このような問題にmatstatを適用する際の主な問題は、TCの探索が多数の変種からの選択によって行われることです。単純な例として、価格をSBとしてモデル化することで、取引に適した週の時間帯を常に「見つける」ことができることをここで示したことがある。そして、それは120のバリエーションから選択するだけです。

matstatは、選択されたTSが必ずしも悪いとは言っておらず、そのような結果はSBからの選択の結果である可能性がある(MUSTではない)と言っているだけである。

 
mytarmailS #:

データからいくつかの "良い "ルール/戦略を抽出する...

起動時にエラーが出る

> sw <- embed(x = close,dimension = 10)[,10:1] # make slide window data
Error in h(simpleError(msg, call)) : 
  ошибка при оценке аргумента '.data' при выборе метода для функции 'embed': argument ".data" is missing, with no default
 

純粋に理論的な疑問として、あるONNXモデルは別のONNXモデルを導き出すために使用できるのか、というものがある。例えば、最初のモデルは、定期的に新しいデータで再学習し、作業モデルを更新するために使われます。つまり、パイソンなどを使わずに。

一見したところ、このようなことはできそうにありませんが、このようなことを試みた人がいるかもしれません。

私はAIから意味のある答えを得ることができませんでした - それはできると書き、質問とは何の関係もない参考文献を引用しています)。

理由: