Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 3043

 
Aleksey Nikolayev #:

Das Hauptproblem bei der Verwendung von matstat für solche Aufgaben ist, dass die Suche nach TS durch Auswahl aus einer großen Anzahl von Varianten erfolgt. Es ist immer möglich, aus einer großen Menge von Varianten etwas sehr Schönes auszuwählen - durch ein einfaches Beispiel habe ich hier einmal gezeigt, dass man durch die Modellierung der Preise als CB immer eine gute Stunde der Woche für den Handel "finden" kann. Und das sind nur 120 Varianten, aus denen man wählen kann.

Die Matstat sagt nicht, dass der ausgewählte TS zwangsläufig schlecht ist, sie sagt nur, dass ein solches Ergebnis nur das Ergebnis der Auswahl aus dem SB sein KANN (NICHT MUSS).

Ich verstehe es immer noch nicht, es gibt keine Möglichkeit, mit Sicherheit zu sagen, ob das Ergebnis statistisch signifikant ist oder nicht? TC oder nicht?

Aleksey Vyazmikin #:

Ich erhalte einen Fehler beim Starten von

1) Sind die Daten dieselben wie im Beispiel?

2) Vielleicht haben sich im neuen R die Namen der Funktionsargumente geändert

?embed
 

Eine der Richtungen könnte darin bestehen, nicht nach den besten, sondern nach den stabilsten Parametern des TS zu suchen, d.h. diejenigen Varianten zu verwerfen, die in verschiedenen Teilen der Geschichte eine Variabilität der Ergebnisse aufweisen.

Eine Möglichkeit besteht darin, Indikatoren für die Stabilität der Ergebnisse in die Bewertungskriterien aufzunehmen.

 

Es gibt ein großartiges Paket zur Bayes'schen Optimierung...

Man kann Multikriterien-Optimierung, Optimierung von Funktionen mit Rauschen und viele andere Dinge machen, ein sehr interessantes Paket.

Ich habe ein Beispiel dafür gemacht, wie der Algorithmus nach einem Minimum in einem eindimensionalen Vektor sucht.

library(mlrMBO)

set.seed(123)
xx <- cumsum(rnorm(1000))
par(mar=c(2,2,2,2))
plot(xx,t="l")

fun = function(i){
  plot(xx,t="l",col=8)
  points(i,xx[i],col=4,lwd=4)
  return(xx[i])
}

obj.fun = makeSingleObjectiveFunction(name = "noisy_parable", 
                                      fn = fun,
                                      has.simple.signature = TRUE, 
                                      par.set = makeNumericParamSet("i", 1, 1, length(xx)),
                                      noisy = F)


ctrl = makeMBOControl(final.method = "best.true.y", final.evals = 10)
ctrl = setMBOControlInfill(ctrl, crit = crit.eqi)
ctrl = setMBOControlTermination(ctrl, iters = 40)

configureMlr(on.learner.warning = "quiet", show.learner.output = F)
res = mbo(obj.fun, control = ctrl, show.info = T)

points(res$x$i, xx[res$x$i] , col=2,lwd=5, pch=10)
Bayesian Optimization and Model-Based Optimization of Expensive Black-Box Functions
  • mlrmbo.mlr-org.com
Flexible and comprehensive R toolbox for model-based optimization (MBO), also known as Bayesian optimization. It implements the Efficient Global Optimization Algorithm and is designed for both single- and multi- objective optimization with mixed continuous, categorical and conditional parameters. The machine learning toolbox mlr provide dozens of regression learners to model the performance of the target algorithm with respect to the parameter settings. It provides many different infill criteria to guide the search process. Additional features include multi-point batch proposal, parallel execution as well as visualization and sophisticated logging mechanisms, which is especially useful for teaching and understanding of algorithm behavior. mlrMBO is implemented in a modular fashion, such that single components can be easily replaced or adapted by the user for specific use cases.
 
mytarmailS #:

Ich verstehe es immer noch nicht, denn es gibt keine Möglichkeit, mit Sicherheit zu sagen, ob das Ergebnis statistisch signifikant ist oder nicht. oder nicht?

Vermischen Sie nicht zwei Dinge, die mit der Verwendung desselben Indikators zu tun haben:

1) Die Bewertung des Ergebnisses eines TS mit diesem Indikator.

2) Auswahl eines TS aus einer großen Anzahl von Optionen durch Maximierung dieses Indikators.

Im ersten Fall kann der Wert des Indikators statistisch signifikant sein, im zweiten Fall ist dies jedoch unwahrscheinlich.

 
mytarmailS #:

Ich verstehe es immer noch nicht, denn es gibt keine Möglichkeit, mit Sicherheit zu sagen, ob das Ergebnis statistisch signifikant ist oder nicht. oder nicht?

1) Sind die Daten dieselben wie in dem Beispiel?

2) Vielleicht haben sich im neuen R die Namen der Funktionsargumente geändert

1. ja

2. Vielleicht - habe 3.5.0 eingeschaltet - die Bibliothek angefordert - installiert und wieder Fehler.

installing the source package ‘inTrees’

trying URL 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/src/contrib/inTrees_1.3.tar.gz'
Content type 'application/octet-stream' length 16771 bytes (16 KB)
downloaded 16 KB

ERROR: dependency 'arules' is not available for package 'inTrees'
* removing 'C:/Users/S_V_A/Documents/R/win-library/3.5/inTrees'
In R CMD INSTALL
Warning in install.packages :
  installation of package ‘inTrees’ had non-zero exit status
 
Aleksey Vyazmikin #:

1. ja

2. Vielleicht - eingeschaltet 3.5.0 - die Bibliothek angefordert - installiert und wieder einige Fehler.

sehen, welche Argumente die Funktion benötigt

?embed

in der Version, die den Fehler mit dieser Funktion hatte.

Ich schrieb es!

 
Aleksey Nikolayev #:

Vermischen Sie nicht zwei Dinge, bei denen derselbe Indikator verwendet wird:

1) Auswertung des Ergebnisses einer TK nach diesem Indikator.

2) Auswahl eines TS aus einer großen Anzahl von Optionen durch Maximierung dieses Indikators.

Im ersten Fall kann der Wert des Indikators über statistische Signifikanz sprechen, im zweiten Fall jedoch kaum.

In einfachen Worten: Wenn ich einen TS nach statistischer Signifikanz bewerte, ist er gut,

wenn ich 100 TS habe und den besten nach dem gleichen Kriterium auswähle, ist er schlecht?


Ich muss etwas missverstanden haben, das kann auch nicht richtig sein?

 
Andrey Dik #:

Eine der Richtungen könnte darin bestehen, nicht nach den besten, sondern nach den stabilsten Parametern des TS zu suchen, d. h. diejenigen Varianten zu verwerfen, die in verschiedenen Teilen der Geschichte unterschiedliche Ergebnisse aufweisen.

Eine Möglichkeit besteht darin, Indikatoren für die Stabilität der Ergebnisse in die Bewertungskriterien aufzunehmen.

Was ist Ihre Variante der Stabilitätsbewertung? Wir haben in letzter Zeit über zwei Optionen diskutiert.
 
mytarmailS #:

sehen, welche Argumente die Funktion benötigt

in der Version, in der es einen Fehler mit dieser Funktion gab.

Ich habe sie geschrieben!

embed {stats}   R Documentation
Embedding a Time Series

Description

Embeds the time series x into a low-dimensional Euclidean space.

Usage

embed (x, dimension = 1)
Arguments

x       
a numeric vector, matrix, or time series.
dimension       
a scalar representing the embedding dimension.
Details

Each row of the resulting matrix consists of sequences x[t], x[t-1], ..., x[t-dimension+1], where t is the original index of x. If x is a matrix, i.e., x contains more than one variable, then x[t] consists of the tth observation on each variable.

Value

A matrix containing the embedded time series x.

Author(s)

A. Trapletti, B.D. Ripley

Examples

x <- 1:10
embed (x, 3)
[Package stats version 4.0.2 Index]
 
Aleksey Vyazmikin #:

Es ist in Ordnung, es sollte funktionieren.

Sind Sie sicher, dass Sie den Code nicht geändert haben? Zeigen Sie mir den Code, in dem der Fehler auftritt.

Grund der Beschwerde: