交易中的机器学习:理论、模型、实践和算法交易 - 页 294

 

你认为应该如何处理递归的问题?

与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()

如何管理输入,循环什么

 
+# Создаем сеть
+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:
已经尝试了一切

http://ru.stackoverflow.com,这是一个专门为提问有关编程的问题而创建的资源,用任何语言,全天候,同时将增加俄语的正确答案的基础。

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

你认为应该如何处理递归的问题?

与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()

如何控制输入,什么是循环

从这些代码片断来看,你想研究/解决文本预测问题。我马上有几个问题。

  • 这与交易有什么关系?
  • 你希望如何将Python代码与MT4/5联系起来?

当然,LSTM与机器学习模型 有关,但textMining与交易有关?

如果你有这方面的经验和知识,请开一个新的主题,例如:TextMiningPython。如果有热心人,他们会支持你。我将饶有兴趣地关注这一发展。但首先要对输入、目标数据、数据源的链接和你想解决的问题进行连贯的描述。既然你的帖子要了解它的内容,只有非常高级的通灵者才能理解。

好运。

 

谷歌有一项服务,叫做谷歌关联https://www.google.com/trends/correlate

它可以搜索相关的用户查询,查询以BP的形式呈现。这项服务很有趣,因为你可以把你的BP加载到它里面,它将搜索与指定BP相关的这类查询。

这个想法是在那里加载符号价格,看看它与什么相关,它可能对搜索新的预测因素很有用,当然,我知道相关是一种非常粗糙的方式来寻找联系,但尽管如此,它还是很有趣的....。

好吧,问题是我不明白服务应该以什么形式提供仪器价格的数据,谁能理解并告诉我如何准备数据,应该以什么形式提供?

添加...........

下面是另一篇文章,让大家对谷歌服务有更深入的了解http://forbes.net.ua/opinions/1336134-google-pomogaet-ustanovit-zhdut-li-ukraincy-krizisa

文章显示,在实际工业生产的动态 之间发现了一种强烈的关联性。

在乌克兰,对 "消费信贷 "这一 短语进行了搜索查询。

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

谷歌有一项服务,叫做谷歌关联https://www.google.com/trends/correlate

它可以搜索相关的用户查询,查询以BP的形式呈现。这项服务很有趣,因为你可以把你的BP加载到它里面,它将搜索与指定BP相关的这类查询。

这个想法是在那里加载符号价格,看看它与什么相关,它可能对搜索新的预测因素很有用,当然,我知道相关是一种非常粗糙的方式来寻找联系,但尽管如此,它还是很有趣的....。

所以,问题是我不明白服务应该以什么形式提供仪器价格的数据,也许有人能想出办法,告诉我如何准备数据,应该以什么形式提供。


这很好,但我记得有诸如熵之类的指标,我突然想提高记录......。也许会有一些有用的东西出来....
 
mytarmailS:

有一个谷歌的服务...

有趣的是,这是代码,但谷歌没有找到任何相关的东西

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:

有趣的是,这是代码,但谷歌没有找到任何相关的东西

谢谢!!!。

没有必要在这里进行区分,它失去了系列的结构和趋势,你也不需要缩放,计算中的相关关系使绝对值 趋于平衡......你能做的最大限度是删除趋势,以便找到一些季节性特征,但你是否需要它是值得怀疑的。

试试吧,会有效果的。

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)

的确,这些联系至少可以说是很奇怪的))。从嘻哈论坛到关于马匹的咨询 :)

问题是 如何识别什么是真正的联系,什么只是一个巧合。

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

没有必要在这里进行区分,它失去了行的结构和趋势。

对,是的。谷歌无法做到这一点,它只寻找与其他趋势的相关性,而不是与他们的增长相关,对不起,结果没有那么有用。

mytarmailS:

你也不需要把它放大。


根据常见问题,它需要这样做(平均值=0,SD=1,只是尺度的作用)。虽然从趋势图来看,谷歌自己为你做了刻度,以防你忘记。

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