Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 219

 
Yuriy Asaulenko:

Você está absolutamente certo, quando se trabalha com movimentos tudo é dramaticamente simplificado - não há nada para "codificar". Além disso, nem sequer precisamos de estar "revestidos de indicadores", podemos ver para onde vai o movimento sem eles). Tudo é ainda mais simples do que você pensa:) Só precisamos de um cata-vento num mastro ou mesmo de um dedo levantado para ver de onde sopra o vento. E quanto tempo vai durar e quão forte vai ser, depende do vento). Podemos entrar no mercado a qualquer momento, e não precisamos esperar por linhas, níveis, etc., só precisamos do "vento".

O reconhecimento do mercado como um processo aleatório, não precisamos fazer suposições sobre a ação das "forças superiores" que controlam o mercado, não precisamos tentar prever nada, não precisamos procurar alguns preditores, que (porque não podemos encontrá-los nós mesmos), e outras hipóteses desnecessárias. Mesmo que existam "poderes superiores", as suas acções continuariam a ser em grande parte imprevisíveis para nós, ou seja, aleatórias. Nada disso importa para nós agora).

Por acaso não é um sadomasoquista, pois não? Porquê fazer tanto escárnio de si mesmo. E o sentido ederal (nossas especulações sobre para onde as coisas irão) é impossível de ser algorítmico. Geralmente aprendemos sobre as causas e as entendemos depois que a conseqüência ocorre. Ninguém cancelou um princípio - não envolva hipóteses supérfluas. E em todas as hipóteses de "forças superiores" que controlam o mercado e tentam interpretar as suas acções, é precisamente este princípio que está a ser violado.

Você não é um cossaco de uma cozinha de 2 mil dólares, pois não? Ou talvez você esteja no ramo errado?

A única coisa que pode dar ao "mercado um processo aleatório" é abandonar completamente o motivo da negociação independente, depois ou esquecer completamente o mercado ou fazer algo a respeito, por exemplo, abrir uma corretora.

Neste caso a questão não é se existem leis de mercado, elas estão na própria natureza do mercado, e nem sequer se trata de "o senso comum é impossível de algoritmar", porque é possível, a questão é como algoritmar é muito melhor do que o senso comum, porque o senso comum não é concorrente dos bots das grandes empresas financeiras.

 
Gianni:

Por acaso não és um cossaco de uma cozinha de 2 mil dólares, pois não? Ou talvez você tenha o ramo errado?

A única coisa que pode dar "reconhecimento do mercado como um processo aleatório" é abandonar completamente o motivo da negociação independente, e depois ou esquecer completamente o mercado ou se envolver no mercado, abrir sua própria empresa de corretagem, por exemplo.

Neste caso a questão não é se existem regularidades no mercado, elas estão na própria natureza do mercado, e não é sequer uma questão de "o senso comum é impossível de algoritmar", pois é possível, a questão é como algoritmar muito melhor do que o senso comum, pois o senso comum não é concorrente dos bots das grandes instituições financeiras.

Juntando-se a

 
Peço aos comerciantes experientes que publiquem os resultados da resolução deste problema com os seus próprios pacotes de matemática

Fórum sobre negociação, sistemas de negociação automatizados e testes estratégicos

Testador de Estratégia MetaTrader 5!

Andrey Dik, 2016.11.21 16:38

Tarefa:

#property library
#property strict

int  countRuns    = 0;

//+------------------------------------------------------------------+
int GetParamCount () export
{
  textLen = StringLen(Code);
  return (textLen);
}
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
void GetParamProperties (double &min, double &max, double &step) export
{
  min = 0.0;
  max = 40.0;
  step = 1.0;
}
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
double FF (double &param []) export
{
  countRuns++;
  
  int sizeArray = ArraySize (param);
  if(sizeArray != textLen)
    return (0.0);
  
  int ffVolue = 0;
  
  for (int i=0; i< textLen; i++)
  {
    if(GetCode(param [i]) == StringSubstr(Code, i, 1))
      ffVolue++;
  }
    
  return (double(ffVolue));
}
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
int GetCountRunsFF () export
{
  return (countRuns);
}
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
void PrintCodeToFile (double &param []) export
{
  int sizeArray = ArraySize (param);
  if(sizeArray != textLen)
  {
    Print ("Неверное количество параметров, печать в файл производится не будет!");
    return;
  }
  
  string code = "";
  
  for(int i=0; i<textLen; i++)
  {
    code+=GetCode (param[i]);
  }
  
  int handle = FileOpen ("decodeFF.csv", FILE_READ|FILE_WRITE|FILE_ANSI|FILE_CSV);
  
  if(handle==INVALID_HANDLE)
  {
    Print ("Ошибка записи в файл востановленного текста ФФ. Ошибка: "+ (string)GetLastError());
    return;
  }
  FileWriteString(handle, code);
  FileClose (handle);
}
//+------------------------------------------------------------------+

string GetCode (double param)
{
  int p = (int) MathRound (param);
  if(p <0)
    p = 0;
  if(p > 40)
    p = 40;

  return (Key [p]);
}

string Key [41] = {"а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я", ";", ":", ".", ",", "-", "?", "!", " "};
int textLen = 0;
string Code = "редко научная статья сочетает в себе эти два типа";

Resultados do meu algoritmo e MT.

 
fxsaber:
Estou pedindo aos mestres para postarem os resultados da solução deste problema matemático com seus pacotes de matemática.

rm(list=ls());gc()


library(GenSA)


letters_s <- c(LETTERS, month.name, 1, 2, ' ')


strings <- letters_s[round(runif(49, 1, 41))]


predictor_number <- 49

set.seed(1)

par_v <- as.numeric(runif(predictor_number, min = 1, max = length(letters_s)))

par_low <- as.numeric(rep(1, times = predictor_number))

par_upp <- as.numeric(rep(length(letters_s), times = predictor_number))


fitness_f <- function(par){

letters_s <- letters_s

strings <- strings

return(as.numeric(-sum(strings == letters_s[round(par)])))

# print(-sum(strings == letters_s[round(par)]))

}


start <- Sys.time()


sao <- GenSA(par = par_v, fn = fitness_f, lower = par_low, upper = par_upp

     , control = list(max.time = 2, smooth = FALSE, simple.function = FALSE))


trace_ff <- data.frame(sao$trace)$function.value

plot(trace_ff, type = "l")

percent(- sao$value)

final_vector <- letters_s[round(sao$par)]


Sys.time() - start


print(sum(letters_s[round(sao$par)] == strings))


resolve-o em menos de 2 segundos. Problema fácil.

 

Fórum sobre negociação, sistemas de negociação automatizados e testes estratégicos

Testador de Estratégia MetaTrader 5!

fxsaber, 2016.11.23 08:33

É uma boa idéia entrar na comunidade de algoritmos de otimização e articular o problema. Se lhes disseres que estás rasgado R, eles vão ficar interessados de imediato. E eles vão mostrar o seu resultado.
 

fxsaber:

É uma boa idéia ir para a comunidade de algoritmos de otimização e formular o problema. Se lhes disseres querasgaste o R, eles vão ficar interessados imediatamente. E eles vão mostrar-lhe os seus resultados.

Em geral, o R rasgou toda a gente

https://www.mql5.com/ru/forum/852/page68#comment_3864317

 
Dr. Trader:

No fim de contas, R rasgou toda a gente.

https://www.mql5.com/ru/forum/852/page68#comment_3864317

A todos os inventores de bicicletas deste site!

Há um artesão muito crescido: quando criança, ele montou coisas muito interessantes a partir de lego, e depois cresceu e montou uma bicicleta, às vezes até se pode andar de bicicleta, embora não haja para onde ir.

Mas o seu orgulho estrangula-o e ele aproxima-se da Mercedes, a empresa que faz tudo o que se move na Terra, e diz: vamos lá, vamos competir ou eu te desfaço em pedaços. E ele rasga-o em pedaços, mas só o artesão repara nisso. E a preocupação? Tem desenvolvimento, design, produção, reclamações de clientes... Centenas de milhares de empregados. Em geral, ainda é uma dor de cabeça - não há tempo para reinventar as bicicletas.

PS.

Homens, ocupem-se com o R. Afinal de contas, a maioria de vocês é capaz de dominar uma ferramenta real para criar modelos de tomada de decisão. Isto pode muito bem ser lucrativo em alguns anos.

 
SanSanych Fomenko:


Homens, levantem o R. Afinal de contas, a maioria de vocês é capaz de dominar uma verdadeira ferramenta de modelagem de tomada de decisão. Pode muito bem ser lucrativo dentro de alguns anos.

Inteligência artificial, desafios e riscos - através dos olhos de um engenheiro

Recomendo que o leia, acho que o autor descreve adequadamente a essência do que está a acontecer.
Искусственный интеллект, вызовы и риски – глазами инженера
Искусственный интеллект, вызовы и риски – глазами инженера
  • habrahabr.ru
Добрый день, коллеги. Сегодня хочется трезво посмотреть глазами инженера на так популярные сейчас искусственный интеллект и Deep learning, упорядочить, выстроить факты и выработать выигрышную стратегию – как с этим … взлететь, пролететь и не упасть кому-нибудь на голову? Потому-что, когда дело от лабораторных моделей на python/matplotlib/numpy...
 
SanSanych Fomenko:

Homens, levantem o R. Afinal de contas, a maioria de vocês é capaz de dominar uma verdadeira ferramenta de modelagem de tomada de decisão. Pode muito bem dar lucro dentro de alguns anos.

Um par de anos? Não é já lucrativo?
 
J.B:

Inteligência Artificial, Desafios e Riscos - Através dos Olhos de um Engenheiro

Recomendo a sua leitura, na minha opinião o autor apresentou a essência do que está a acontecer de forma relevante

muitas palavras, mas a essência ....., pode não pegar, ou talvez não esteja lá, como para mim o homem apenas reclamou um pouco))