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

 
Uladzimir Izerski #:

거짓 선지자의 길을 따르지 말라고 충고할 수 있을 뿐입니다.

저는 그렇습니다.
 

새해 복 많이 받으세요!!!

정확성과 효율성 사이의 절충점을 신중하게 고려하는 것이 중요합니다 .

일반적으로 이것은 인생의 제 1원칙이라고 할 수 있습니다. 오차 없는 측정이란 있을 수 없습니다. 그리고 오차는 측정 시간과 평균에 따라 달라집니다.... 말하자면...

 
글쎄, 그들은 그것을 문질러서 금지했습니다. 지워진 주요 사항, 몇 달러로 네덜란드 SIM을 만드는 방법))))
 
Valeriy Yastremskiy #:
글쎄, 그들은 그것을 문질러서 금지했습니다. 가장 중요한 것은 지워졌습니다. 몇 달러로 네덜란드 SIM을 만드는 방법))))

그리고 감사합니다.)

 

MT5용 매니큐어 관리 스크립트가 있나요?

같은

1) 거래를 입력하면 자동으로 스톱이 설정됩니다.

2) 계좌에서 손실이 발생하면 더 이상 거래를 열 수 없습니다.

 
mytarmailS #:

MT5용 매니지먼트 스크립트가 있나요?

같은

1) 거래를 입력하면 스톱이 자동으로 설정됩니다.

2) 계좌에서 손실이 발생하면 더 이상 거래를 개시할 수 없습니다.

재밌게도 어제 저는 "MO가 시장 진입 방향이 아니라 관리, 특히 손익분기점까지의 이체를 관리하고 스톱과 테이크 아웃을 설정하는 데 사용되면 어떨까"라고 생각했습니다.

코드베이스에 그런 것들이 많이 있을 겁니다. 찾아보세요.

 
mytarmailS #:

Alexey, 알고 있을 것 같지만 아닐 수도 있으므로 가변 길이 시트/벡터를 입력으로 받는 알고리즘이 어떻게 작동하는지 보여드리겠습니다.


가변 길이의 벡터가 있는 시트가 있고, 하나의 벡터 = 하나의 관측값이 있습니다.

이 데이터를 가져올 때 "보닛 아래"의 알고리즘인 모델은 무엇을 할까요? 이 데이터를 행렬로 변환합니다.

하지만 실제 데이터의 경우 행렬이 방대하기 때문에 알고리즘은 데이터를 메모리 효율적인 희소 행렬로 변환합니다.

따라서 여전히 보닛 아래는 행렬입니다.) (데이터 주의)


모든 상품 바구니는 상점의 상품 수와 동일한 고정된 크기의 벡터로 자연스럽게 축소됩니다.

우리의 경우는 상당히 다르게 보입니다. 간단하게 하기 위해 가격을 각각 1 또는 -1로 레이블이 지정된 렌코 막대의 시퀀스라고 가정합니다. 위치 번호 N의 각 막대에 대해 특징 벡터는 모든 이전 막대, 즉 길이 N-1의 1과 -1의 벡터입니다. 특징 벡터의 길이에는 선험적인 제약 조건이 없습니다. 특징에 대해 주어진(우리가 정한) 고정된 수의 막대를 사용하는 것은 강제적인 조치입니다. 우리는 이러한 제약에서 벗어나 임의의 길이의 벡터를 처리할 수 있는 알고리즘을 구축하고자 합니다.

저는 이러한 알고리즘을 위한 수학 자료로 재귀 함수를 찾았습니다. 재귀 함수는 모든 크기의 벡터를 입력으로 받지만, 고정된 수의 인수를 가진 함수를 통해 정의됩니다. 가장 간단한 예는 지수 평균입니다.

 
Aleksey Nikolayev #:

모든 제품 바구니는 상점의 모든 제품 품목 수와 동일한 미리 고정된 크기의 벡터로 자연스럽게 축소됩니다.

우리의 경우는 상당히 다릅니다. 간단하게 하기 위해 가격을 각각 1 또는 -1로 레이블이 지정된 렌코 막대의 시퀀스라고 가정합니다. 위치 번호 N의 각 막대에 대해 특징 벡터는 모든 이전 막대, 즉 길이 N-1의 1과 -1의 벡터입니다. 특징 벡터의 길이에는 선험적인 제약 조건이 없습니다. 특징에 대해 주어진(우리가 정한) 고정된 수의 막대를 사용하는 것은 강제적인 조치입니다. 저희는 이러한 제약에서 벗어나 임의의 길이의 벡터를 처리할 수 있는 알고리즘을 구축하고자 합니다.

저는 이러한 알고리즘을 위한 수학 자료로 재귀 함수를 찾았습니다. 재귀 함수는 모든 크기의 벡터를 입력으로 받지만, 고정된 수의 인수를 가진 함수를 통해 정의됩니다. 가장 간단한 예는 지수 평균입니다.

정확히 무엇을 어떤 방식으로 검색하고 싶으신가요?

예를 들어, 패턴, 세 개의 피크 또는 그 무엇(규칙, 이벤트, 패턴, 클러스터) 이 있다고 가정해 보겠습니다.


그 사이에는 어떤 일이든 일어날 수 있으며, 우리는 이를 노이즈로 간주하고 고려하지 않습니다.

노이즈가 있는 벡터/행렬을 입력으로 받아 패턴이 있는지 여부를 확인합니다....

이 개념이나 다른 개념을 고려하고 있나요?

========================================================

나는 그것을 일어나야하는 일련의 이벤트로보고 있으며, 로그 규칙으로 설명됩니다.

이벤트 == 논리 규칙.

예 : 이벤트 1이 발생하고 이벤트 2가 없으면 이벤트 3 등을 기다립니다....

따라서 규칙/이벤트에는 검색이 계속될 때 "진행" 이벤트와 모든 것이 취소될 때 "중지" 이벤트의 두 가지 종류가 있습니다.


아키텍처는 다음과 같습니다.

1) 규칙은 문법에 의해 생성

2) 생성 알고리즘은 적합도 함수에 의해 규칙을 검색하고 개선합니다.

=========================

다음은 다차원 데이터에 대한 간단한 문법(이 경우 OHLC)의 예입니다.

library(gramEvol)

Xcolnames <- c("open","high","low","close")

ruleDef <- list(
  res = grule(t(as.data.frame(multi.expr))),
  
  multi.expr = grule( c(single.expr, single.expr, single.expr,
                        single.expr, single.expr, single.expr)),
  
  single.expr = grule(list(r=c( go_rules   = as.character(expression(Expr)),
                                stop_rules = as.character(expression(Expr))))),
  
  
  Expr     = grule(expr, expr & expr ),
  
  expr     = grule(logy_op(one_var,one_var) ),
  one_var  = gsrule('X[<id>,<var_name>]'),
  
  id       = grule(i,numb,i+numb),
  numb     = gvrule(1:10),
  var_name = gvrule(Xcolnames),
  logy_op  = grule(">","<"))

grammarDef <- CreateGrammar(ruleDef)
gr <- GrammarRandomExpression(grammarDef, 1)
rbind.data.frame(eval(gr))


문법이 생성하는 규칙입니다.

이 규칙 블록은 여러 조건이 포함된 단일 규칙과 같습니다.

"X"는 속성이있는 매트릭스이고 루프 "i"는 그 위를 걷고 좋아하는 것을 선택하는 매우 유연한 시스템입니다.

                                                       go_rules
r   X[i, "low"] < X[2, "close"] & X[i + 3, "low"] > X[i + 2, "low"]
r.1                             X[i + 2, "open"] < X[i + 8, "high"]
r.2   X[2, "open"] < X[i + 3, "high"] & X[i, "high"] < X[8, "high"]
r.3                                   X[1, "low"] < X[i + 8, "low"]
r.4   X[3, "open"] > X[3, "close"] & X[i + 1, "open"] < X[2, "low"]
r.5                                 X[i, "high"] < X[i + 2, "open"]
                                                       stop_rules
r                                    X[i, "open"] > X[2, "close"]
r.1  X[i, "low"] > X[i, "high"] & X[i + 2, "high"] < X[i, "high"]
r.2                                  X[3, "high"] < X[2, "close"]
r.3    X[1, "high"] > X[2, "open"] & X[i, "high"] > X[i, "close"]
r.4                                  X[4, "open"] < X[2, "close"]
r.5 X[i, "high"] < X[1, "high"] & X[2, "low"] < X[i + 2, "close"]

원칙적으로 이미 모든 것이 구현되어 있으며 관심이 있으시면 여러분에게 던질 수 있습니다.



추신 속성 행렬의 크기에는 제한이 없으며 각 인스턴스는 어떤 크기이든 될 수 있으며 여기서 가장 중요한 것은 모든 규칙이 순서대로 작동하고 시간에 구속이 없다는 것입니다.

 
mytarmailS #:

정확히 무엇을 어떤 방식으로 찾고 싶으신가요?

예를 들어 패턴, 세 개의 피크 또는 기타(규칙, 이벤트, 패턴, 클러스터) 가 있습니다.


그 사이에는 어떤 일이든 일어날 수 있으며, 우리는 이를 노이즈로 간주하고 고려하지 않습니다.

따라서 노이즈가 있는 벡터/행렬을 입력으로 받아 패턴이 있는지 여부를 확인합니다.....

이것이 고려 중인 개념인가요, 아니면 다른 개념인가요?

제 개념은 특별한 제한이 없기 때문에 가능한 한 광범위하며, 많은 것들이 여기에 해당합니다. 귀하의 예도 여기에 해당할 수 있을 것입니다. 특히 중요한 것은 패턴 길이가 엄격하게 정의되어 있지 않다는 사실입니다.

어쨌든 중요한 점은 SB에서 1 또는 -1의 확률은 항상 0.5이며 확률(빈도)이 이 값에서 크게 벗어나는 지점을 찾아야 한다는 것입니다. 예를 들어 패턴에서 이것은 세 번째 피크의 경사면이 될 수 있습니다.

"우리는 세 번째 피크의 왼쪽 경사면에 있다"는 규칙은 재귀 함수를 통해 표현할 수 있다고 생각합니다. 하지만 이러한 함수를 명시적으로 쉽게 작성할 수 있다고 생각하지 않으므로 이를 구성하려면 MO 알고리즘이 필요합니다.

 
Aleksey Nikolayev #:

하지만 이러한 함수를 명시적으로 쉽게 작성할 수 있는 것은 아니기 때문에 이를 구성하기 위해서는 MO 알고리즘이 필요합니다.

여러분의 요구 사항에 맞는 알고리즘을 제안해 보았습니다.


1) 우리가 필요한 것을 직접 작성하므로 시간 제한이 없습니다.

2) 우리가 직접 필요한 것을 작성할 때 규칙 성을 찾는 모든 논리

3) 규칙에 대한 설명을 로그 또는 함수로 선택할 수 있습니다. 규칙 또는 함수 , 우리가 필요한것을 직접 작성하기 때문입니다.


그래서 제가 제안한 개념에서는

이러한 패턴은 동등할 것이고, 패턴 자체는 어떤 복잡성도 가질 수 있습니다.

     open high low close
[1,]    1    0   0     0
[2,]    0    1   0     0
[3,]    0    0   1     0
[4,]    0    0   0     1
[5,]    0    0   0     0
      open high low close
 [1,]    0    0   0     0
 [2,]    0    0   0     0
 [3,]    1    0   0     0
 [4,]    0    0   0     0
 [5,]    0    0   0     0
 [6,]    0    1   0     0
 [7,]    0    0   1     0
 [8,]    0    0   0     0
 [9,]    0    0   0     0
[10,]    0    0   0     1

AMO는 그렇게 할 수 없습니다.

그리고 "중지" 규칙이 있는데 이 역시 어떤 AMO도 할 수 없습니다.

저는 표 형식의 데이터를 입력으로 사용하는 범용 AMO를 의미합니다.

사유: