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

 
Top2n:

O que é R?

Aqui está o modo russo.

R é uma linguagem algorítmica, o que não é muito interessante. O mais interessante: R é o software estatístico e os gráficos.

Embora como uma linguagem algorítmica R não seja muito interessante, entre as linguagens algorítmicas de uso geral ela ocupa uma posição sólida na 5ª posição

Aqui está uma foto.

R é uma divisão da Microsoft. Tem de fazer o download a partir daqui.

O próprio R consiste em duas partes: a linguagem algorítmica em si e pacotes.

Aqui está uma lista alfabética de pacotes. Aqui você tem Fourier e wavelets e muitas (até muitas) outras coisas.

Aqui está um agrupamento de pacotes listados no link anterior por áreas temáticas.

Quando o vires, não te assustes. É um sistema extremamente conveniente.

1. O próprio idioma R é muito avançado, mas o primeiro mínimo pode ser dominado em algumas horas se você possuir pelo menos MKL

2. R é um intérprete, por isso a depuração é extremamente fácil. Você pode sempre tentar uma ou mais linhas. A instalação e execução das primeiras linhas de código levará, no máximo, meia hora.

3. o grande número de pacotes não dificulta o seu uso, porque você só precisa encontrar o pacote em que está interessado, por exemplo para wavelets, encontrar uma função nele e executá-lo. Normalmente é uma ou mais linhas de código.

Ao nível da "tentativa", as coisas são extremamente simples.

Boa sorte com isso.

Tufte in R (примеры для всех вариантов графических подсистем R)
  • 2016.12.03
  • p2004r
  • r-statistics.livejournal.com
Классическая книга о отображении количественных данных в графическом виде получила сборник открытых примеров реализации рецептов отображения информации на языке R. Книга (надо покупать) https://www.edwardtufte.com/tufte/books_vdqi...
 
ivanivan_11:
mas ninguém tentou aplicar conhecimentos nesta área para prever apostas desportivas - ténis, futebol, etc.? ou para escrever bots para o poker/pref?

há uma grande amostra???

ou qualquer amostra...?

a mesma coisa...?

 
mytarmailS:

há uma grande amostra???

ou qualquer amostra...?

a mesma coisa...

Se não tiveres um, não significa que não tenhas um. Há um recurso online de previsão de ténis em rede neural. Dizem que analisaram mais de 800k resultados de jogos.

Na verdade, mesmo o ibm e os softwares não se esquivam de apresentar tais projetos.

Para o poker, penso que também se podem obter resultados de diferentes torneios.

a mesma coisa...

 
ivanivan_11:

Se você não o tem, não significa que não o tenha de todo. existe um recurso online para previsões de tênis baseadas em redes neurais. eles dizem que analisaram mais de 800k resultados de partidas.

Para o póquer, penso que também se podem obter resultados de diferentes torneios.

a mesma coisa...

))) bem ensinar, boa sorte ))))
 
ivanivan_11:

Se você não o tem, não significa que não o tenha de todo. existe um recurso online para previsões de tênis baseadas em redes neurais. eles dizem que analisaram mais de 800k resultados de partidas.

Para o póquer, penso que também se podem obter resultados de diferentes torneios.

a mesma coisa...

Para mim a previsibilidade vai depender da composição dos participantes. Se toda a formação mudar, então todas as estatísticas obtidas podem ser jogadas fora.
 
ivanivan_11:
Tenho muita experiência nesta área, mas já tentou aplicá-la para prever apostas desportivas - ténis, futebol, etc.? Ou para escrever bots para poker/pref?

No poker, acho que a aprendizagem à máquina seria demasiado complicada e incompreensível, é um jogo de informação fechado.

Mas estatísticas simples devem ser suficientes para vencer.

Conhecendo as suas próprias cartas e as cartas dos seus oponentes, você pode passar pelas opções das cartas dos seus oponentes e estimar as suas chances de ganhar. Além disso, com base no dinheiro investido (próprio e dos adversários) - para avaliar se a próxima jogada valerá a pena. Da mesma forma, você pode adicionar uma simulação de eventos para alguns movimentos à frente para avaliar os milhares de diferentes situações possíveis, e calcular o lucro médio. Factores de correcção por bluff e azar. Além de traçar o perfil dos adversários para saber a sua tendência para o bluff. Isso deve servir.

 
Primeiro de tudo, você precisa do que não está lá, você precisa de uma amostra.
 
fxsaber:
Por Python

Complicado e desactualizado.

Através do "PythonInR" qualquer código .py é executado sem problemas.

A propósito, para depuração no RStudio NotebookR executa o código Python como nativo.

Boa sorte.

 
Vladimir Perervenko:

Complicado e desactualizado.

Através do "PythonInR", qualquer código .py é executado sem problemas.

A propósito, para depuração no RStudio NotebookR executa o código Python como nativo.

Boa sorte.

Python é ótimo, mas você precisa de MKL4.

Há um pacoteRserve. Aqui está a minha tradução da anotação

Rserve é um servidor TCP/IP que permite que outros programas usem ferramentas R de diferentes idiomas sem ter que inicializar o R ou ligar-se a uma biblioteca R. Cada conexão tem um espaço de trabalho e um diretório de trabalho separados. Implementações de clientes estão disponíveis para linguagens populares como C/C++ e Java. O Rserve suporta conexão remota, autenticação e transferência de arquivos.

O objetivo principal do Rserve é fornecer uma interface que possa ser usada por aplicações para fazer cálculos em R. Nossa experiência com outros modos de comunicação tem mostrado que há três coisas principais a considerar ao desenvolver um novo sistema: separação, flexibilidade e velocidade.

É importante separar o sistema R da aplicação propriamente dita. Uma razão é evitar qualquer dependência da linguagem de programação da aplicação, já que a própria interface direta com R (Chambers, 1998) é aplicável apenas com C (R Working Group Development, 2003). Outro aspecto vem do fato de que a integração próxima com R é mais propensa a erros, porque a aplicação tem que levar em conta os internos de R. Por outro lado, os desenvolvedores de aplicativos querem que a interface seja muito flexível e que utilize a maioria dos recursos do R. Finalmente, a velocidade é um elemento chave porque o objectivo é fornecer ao utilizador os resultados desejados rapidamente sem ter de iniciar uma sessão R a partir do zero.

O conceito cliente-servidor permite-nos satisfazer os três principais requisitos. A computação é feita pelo núcleo Rserve, que é o servidor, respondendo a pedidos de clientes, tais como aplicações. A comunicação entre a Rserve e o cliente é feita através de tomadas de rede, normalmente TCP/IP, mas também são possíveis outras alterações. Isto permite o uso de um Rserve central a partir de computadores remotos, o uso de múltiplos Rserve por um cliente remoto para distribuir o cálculo, mas também a comunicação local em uma única máquina.

Uma única Rserve pode servir vários clientes ao mesmo tempo. Cada conexão Rserve recebe seu próprio espaço de dados e diretório de trabalho. Isto significa que o objeto criado por uma única conexão nunca afeta outras conexões. Adicionalmente, cada conexão pode produzir arquivos locais, como imagens criadas pelo dispositivo de bitmap Rserve, sem interferir com outras conexões. Cada aplicativo pode abrir várias conexões para lidar com tarefas paralelas.

A transferência de dados entre a aplicação e o Rserve é feita em formato binário para obter velocidade e minimizar a soma dos dados transferidos. Os objectos intermédios são armazenados na Rserve, pelo que apenas os itens de interesse necessitam de ser transferidos para o cliente

Além de comunicar com o kernel R, o Rserve também tem protocolos de autenticação e transferência de arquivos integrados que tornam o Rserve adequado para uso em máquinas individuais. A autenticação do usuário é fornecida para adicionar uma camada de segurança para uso remoto. A transferência de arquivos permite a cópia dos arquivos necessários para o cálculo ou R produzido do cliente para o servidor e vice versa.

Rserve atualmente suporta dois grupos principais de comandos para comunicação com R: criação de objetos em R e avaliação de código R. A maioria dos objetos básicos, como números, cadeias ou vetores, pode ser criada através da criação de adições diretas. O conteúdo dos objectos é enviado em formato binário do cliente para o servidor.

Isto proporciona uma forma eficiente de transportar os dados necessários para a avaliação. Todos os objetos são sempre transferidos por valor para separar os espaços de dados do cliente e do servidor. Desta forma, tanto o cliente como o servidor estão livres para se livrarem dos dados a qualquer momento, evitando as falhas catastróficas que são inerentes a outros métodos de comunicação onde os sistemas partilham fisicamente os mesmos dados.

O segundo grande grupo de comando é a avaliação do código R. Ao contrário de criar um objeto, tal código é enviado em texto claro para o Rserve e tratado como se o código tivesse sido inserido no console em R. O objeto de avaliação resultante pode ser passado de volta em formato binário para o cliente, se necessário. A maioria dos tipos R são suportados, incluindo números escalares, strings, vetores, listas (daí classes, quadros de dados, etc.), objetos léxicos, etc. Isto permite à Rserve devolver todos os modelos de volta ao cliente. O cliente pode decidir não obter quaisquer objetos que sejam úteis, configurando objetos intermediários em R que não estejam diretamente relacionados com o cliente.

A Rserve fornece dois serviços básicos de tratamento de erros. Os três resultados de avaliação possíveis são uma avaliação bem sucedida, um erro de tempo de execução por erro de parser e um erro de código. O estado sempre retorna à aplicação cliente para permitir a ação apropriada. Como Rserve é apenas uma camada entre a aplicação e R, ainda é possível influenciar a manipulação de um erro de tempo de execução no próprio R, por exemplo, com uma opção ou comando de tentativa errônea.

Um uso típico das ferramentas Rserve é carregar todos os dados necessários em R, realizar cálculos de acordo com a entrada do usuário, como a construção do modelo, e passar os resultados de volta para a aplicação para exibição. Todos os dados e objetos são persistentes até que a conexão seja fechada. Isto permite que a aplicação abra a conexão antecipadamente, por exemplo, quando o usuário tiver especificado um conjunto de dados, transfira todos os dados necessários para o servidor e responda à entrada do usuário, calculando prontamente os modelos ou estimativas desejados. Uma vez que os resultados não estão em forma de texto, não há uma tediosa análise dos resultados.

A interface para o Rserve é modular e documentada, dando acesso ao Rserve a partir de qualquer linguagem de aplicação ou linguagem de programação que suporte soquetes, incluindo as linguagens de script e programação atuais. Nós implementamos o cliente para Rserve em Java puro, que se comunica através de uma interface com a maioria das instalações Rserve e mapeia todos os objetos disponíveis para Rserve em seus próprios objetos ou classes Java. O uso do cliente Java é ilustrado na seção como um exemplo.


Existe um pacoteJava que dá acesso a este servidor.

Se reescrevermos este pacote deJava para MKL4.... então temos acesso real a R a partir de EA

Razão: