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

 

Como você acha que o recursivo deve ser tratado?

Com lstm

+import numpy as np
+from keras.preprocessing import sequence
+from keras.models import Sequential
+from keras.layers import Dense, Activation, Embedding
+from keras.layers import LSTM
+from keras.datasets import imdb
+
+# Устанавливаем seed для повторяемости результатов
+np.random.seed(42)
+# Максимальное количество слов (по частоте использования)
+max_features = 5000
+# Максимальная длина рецензии в словах
+maxlen = 80
+
+# Загружаем данные
+(X_train, y_train), (X_test, y_test) = imdb.load_data(nb_words=max_features)
+
+# Заполняем или обрезаем рецензии
+X_train = sequence.pad_sequences(X_train, maxlen=maxlen)
+X_test = sequence.pad_sequences(X_test, maxlen=maxlen)
+
+# Создаем сеть
+model = Sequential()

Como gerir as entradas, o que fazer para fazer loop

 
+# Создаем сеть
+model = Sequential()
+# Слой для векторного представления слов
+model.add(Embedding(max_features, 32, dropout=0.2))
+# Слой долго-краткосрочной памяти
+model.add(LSTM(100, dropout_W=0.2, dropout_U=0.2))  # try using a GRU instead, for fun
+# Полносвязный слой
+model.add(Dense(1, activation="sigmoid"))
+
+# Копмилируем модель
+model.compile(loss='binary_crossentropy',
+              optimizer='adam',
+              metrics=['accuracy'])
+
+# Обучаем модель
+model.fit(X_train, y_train, batch_size=64, nb_epoch=7,
+          validation_data=(X_test, y_test), verbose=1)
+# Проверяем качество обучения на тестовых данных
+scores = model.evaluate(X_test, y_test,
+                        batch_size=64)
+print("Точность на тестовых данных: %.2f%%" % (scores[1] * 100))
 
Top2n:
Já tentei de tudo.

cadastre emhttp://ru.stackoverflow.com um recurso especialmente criado para fazer perguntas sobre programação, em qualquer linguagem, 24 horas por dia, e ao mesmo tempo aumentará a base de respostas corretas em russo

Stack Overflow на русском
Stack Overflow на русском
  • ru.stackoverflow.com
Вот как это работает: Любой может задать вопрос Любой может ответить Лучшие ответы получают голоса и поднимаются наверх
 
Top2n:

Como você acha que o recursivo deve ser tratado?

Com lstm

+import numpy as np
+from keras.preprocessing import sequence
+from keras.models import Sequential
+from keras.layers import Dense, Activation, Embedding
+from keras.layers import LSTM
+from keras.datasets import imdb
+
+# Устанавливаем seed для повторяемости результатов
+np.random.seed(42)
+# Максимальное количество слов (по частоте использования)
+max_features = 5000
+# Максимальная длина рецензии в словах
+maxlen = 80
+
+# Загружаем данные
+(X_train, y_train), (X_test, y_test) = imdb.load_data(nb_words=max_features)
+
+# Заполняем или обрезаем рецензии
+X_train = sequence.pad_sequences(X_train, maxlen=maxlen)
+X_test = sequence.pad_sequences(X_test, maxlen=maxlen)
+
+# Создаем сеть
+model = Sequential()

Como controlar a entrada, o que fazer para fazer loop

A julgar por estes trechos de código, você quer investigar/solucionar o problema de predição de texto. Tenho algumas perguntas a fazer de imediato:

  • O que é que isto tem a ver com a negociação?
  • Como você espera ligar o código Python ao MT4/5?

Claro que LSTM está relacionado com modelos de aprendizagem de máquinas, mas textMining a trading?

Se você tem experiência e know-how no assunto, inicie um novo tópico, por exemplo: TextMiningPython. Se houver entusiastas, eles vão apoiá-lo. Vou seguir o desenvolvimento com interesse. Mas comece com uma descrição coerente da entrada, dados de destino, links para fontes de dados e o problema que você quer resolver. Uma vez que o seu posto para entender do que se trata só pode ser entendido por um médium de muito alto nível.

Boa sorte.

 

há um serviço do google chamado google correlatehttps://www.google.com/trends/correlate

Ele pode procurar por consultas correlatas de usuários, as consultas são apresentadas sob a forma de BP. O serviço é interessante porque você pode carregar seu BP nele e ele irá procurar por tais consultas que se correlacionam com o BP especificado.

A idéia é carregar ali o preço do símbolo e ver com o que ele se correlaciona, pode ser útil para pesquisar novos preditores, claro que entendo que a correlação é uma maneira muito grosseira de encontrar links, mas ainda assim é interessante....

Bem, o problema é que eu não entendo de que forma o serviço deve alimentar os dados com o preço do instrumento, alguém pode entender e me dizer como preparar os dados e de que forma eles devem ser

add...........

Aqui está outro artigo para dar uma compreensão mais profunda dos serviços do googlehttp://forbes.net.ua/opinions/1336134-google-pomogaet-ustanovit-zhdut-li-ukraincy-krizisa

o artigo mostra que foi encontrada uma forte correlação entre adinâmica da produção industrial real

na Ucrânia com consultasde pesquisa para afrase "crédito ao consumidor" na Ucrânia

Google Correlate
  • www.google.com
Google Correlate finds search patterns which correspond with real-world trends.
 
mytarmailS:

há um serviço do google chamado google correlatehttps://www.google.com/trends/correlate

Ele pode procurar por consultas correlatas de usuários, as consultas são apresentadas sob a forma de BP. O serviço é interessante porque você pode carregar seu BP nele e ele irá procurar por tais consultas que se correlacionam com o BP especificado.

A idéia é carregar ali o preço do símbolo e ver com o que ele se correlaciona, pode ser útil para pesquisar novos preditores, claro que entendo que a correlação é uma maneira muito grosseira de encontrar links, mas ainda assim é interessante....

Bem, o problema é que eu não entendo de que forma o serviço deve alimentar os dados com o preço do instrumento, talvez alguém possa descobrir e me dizer como preparar os dados e de que forma eles devem ser


É óptimo, mas lembro-me que havia indicadores como a entropia e outra coisa e, de repente, eu queria levantar os recordes...... Talvez algo de útil saia disso....
 
mytarmailS:

há um serviço de google...

interessante, aqui está o código, mas o google não encontrou nada correlativo.

library(lubridate)
library(rusquant) #install.packages("rusquant",  repos="http://R-Forge.R-project.org")


#для  недельных баров, сдвиг на одну дату назад ибо в сша первый день недели это воскресенье
getSymbols("EURUSD",src = "Finam", period="week", from = 0)
eurusdTime <- as.character(ymd(time(EURUSD))-days(1))


# #для  месячных баров
#  getSymbols("EURUSD",src = "Finam", period="month", from = 0) #месячные  бары вместо недельных
#  eurusdTime <- as.character(ymd(time(EURUSD))) #для  месячных баров



#либо  первый вариант, либо второй, зависит от того как в гугле данные относятся к дате - с отставанием или опережением. я не знаю.
eurusdOpen <- as.numeric(scale(c(diff(as.numeric(EURUSD$EURUSD.Open))[-1], 0, 0)))
#  eurusdOpen <- as.numeric(scale(c(diff(as.numeric(EURUSD$EURUSD.Open)), 0)))


write.table(matrix(c(eurusdTime,eurusdOpen), ncol=2), file="table.csv", sep=",", dec=".", row.names = FALSE, col.names = FALSE)

 
Dr. Trader:

interessante, aqui está o código, mas o google não encontrou nada correlativo.

Obrigado!!!

não há necessidade de diferenciar lá, perde a estrutura da série e a tendência, também não há necessidade de escalar, correlação nos níveis de cálculo para fora dos valores absolutos... O máximo que você pode fazer é remover a tendência para encontrar algumas características sazonais, mas é duvidoso se você precisa...

Experimente e vai funcionar.

library(lubridate)
library(rusquant) #install.packages("rusquant",  repos="http://R-Forge.R-project.org")


#для  недельных баров, сдвиг на одну дату назад ибо в сша первый день недели это воскресенье
getSymbols("EURUSD",src = "Finam", period="week", from = 0)
eurusdTime <- as.character(ymd(time(EURUSD))-days(1))


eurusdOpen <- as.numeric(EURUSD$EURUSD.Open)


DT <- matrix(c(eurusdTime,eurusdOpen), ncol=2)


write.table(DT,file="table.csv", sep=",", dec=".", row.names = FALSE, col.names = FALSE)

É verdade, as ligações são, no mínimo, estranhas)) Dos fóruns de hip-hop às consultas sobre cavalos :)

A questão é como identificar qual é a verdadeira ligação e o que é apenas uma coincidência.

Документация по MQL5: Математические функции / MathAbs
Документация по MQL5: Математические функции / MathAbs
  • www.mql5.com
Математические функции / MathAbs - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
mytarmailS:

Não há necessidade de diferenciação aí, perde a estrutura da linha e a tendência

Certo, sim. O Google não pode fazer isso, ele só procura correlação com outras tendências, não com seus aumentos, desculpe, mas não é tão útil.

mytarmailS:

escala é desnecessária também.


É necessário, de acordo com a FAQ (média=0, sd=1, o que faz a escala). Embora a julgar pelo gráfico de tendências, o próprio google faz a escala para você, caso você tenha esquecido.

 
Скриншот
Скриншот
  • prnt.sc
Снято с помощью Lightshot