Разговор с искусственным интеллектом (ИИ) о форексе. - страница 117
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Сравнение на объектно-ориентированных (ООС) данных является важным шагом в оценке точности любого метода прогнозирования. ООС данные представляют собой набор объектов с известными свойствами, которые используются для проверки точности прогнозирования.
Сравнение на ООС данных позволяет оценить, насколько хорошо метод прогнозирования работает на реальных данных, которые не использовались при создании модели. Это помогает избежать переобучения модели, когда она слишком точно подстраивается под обучающие данные, но не может обобщаться на новые данные.
Также важно учитывать, что выборка ООС данных должна быть репрезентативной для общей популяции, чтобы оценка точности модели была релевантной и имела высокую предсказательную способность.
Правильно ли я понимаю, что правильно то, что я тестирую обученную модель на данных различных финансовых инструментов, которые ранее не использовались в обучении модели? И для обучения, и для тестирования используются показания индикатора RSI на таймфрейме H1.
Вам бы посмотреть хороший учебник по МО, Тибширани например. ООС это от OOS - Out Of Sample, данные которые не участвовали в обучении модели. Обычно разбивают данные на две части - на одной учат модель, а на другой проверяют осмысленен ли результат обучения. Можно также сравнить на ООС с наивным прогнозом, когда, например, цвет свечи будет просто тем же, что и у предыдущей свечи.
Иногда это не столь тривиальная задача - побить наивный прогноз. Это отчасти похоже на соревнование фондов с индексом, в котором индекс в среднем побеждает)
This is time series, you need to forecast next element and compare errors. forecast and сompare rmse of naive aproach with rmse of cnn-lstm model using python, based this data: 1.07016 1.06971 1.06916 1.06791 1.06789 1.06788 1.06836 1.06845 1.06821 1.06787 1.06724 1.06602 1.06549 1.06604 1.06525 1.06575 1.06651 1.06642 1.06655 1.06762 1.06705 1.06596 1.06765 1.06724 1.06670 1.06637 1.06523 1.06234 1.05520 1.05479 1.05312 1.05284 1.05356 1.05604 1.05747 1.05554 1.05582 1.05463 1.05567 1.05668 1.05517 1.05465 1.05462 1.05455 1.05583 1.05667 1.05650 1.05687 1.05725 1.05693 1.05692 1.05936 1.06155 1.06109 1.06207 1.06045 1.06075 1.06106 1.06239 1.06034 1.06194 1.06074 1.05992 1.06056 1.06039 1.06015 1.06065 1.06056 1.06289
про "much lower" он конечно перегнул, попробуйте более длинный ряд со всеми предобработками
а лучше обучать на единичных приращениях, так не будет завышения оценок rmse, ввиду высокой корреляции любого худо-бедного прогноза с исходными данными
Привет!
ИИ может узнать где обманул тот или иной человек по его статье, словам, лекциям.
Даже можно узнать замысел того или иного человека.
Даже можно узнать замысел того или иного человека.
This is time series, you need to forecast next element and compare errors. forecast and сompare rmse of naive aproach with rmse of cnn-lstm model using python, based this data: 1.07016 1.06971 1.06916 1.06791 1.06789 1.06788 1.06836 1.06845 1.06821 1.06787 1.06724 1.06602 1.06549 1.06604 1.06525 1.06575 1.06651 1.06642 1.06655 1.06762 1.06705 1.06596 1.06765 1.06724 1.06670 1.06637 1.06523 1.06234 1.05520 1.05479 1.05312 1.05284 1.05356 1.05604 1.05747 1.05554 1.05582 1.05463 1.05567 1.05668 1.05517 1.05465 1.05462 1.05455 1.05583 1.05667 1.05650 1.05687 1.05725 1.05693 1.05692 1.05936 1.06155 1.06109 1.06207 1.06045 1.06075 1.06106 1.06239 1.06034 1.06194 1.06074 1.05992 1.06056 1.06039 1.06015 1.06065 1.06056 1.06289
про "much lower" он конечно перегнул, попробуйте более длинный ряд со всеми предобработками
а лучше обучать на единичных приращениях, так не будет завышения оценок rmse, ввиду высокой корреляции любого худо-бедного прогноза с исходными данными
ChatGPT:
Этот код создает и обучает модель CNN-LSTM на обучающих данных, используя функцию create_model(). Затем он преобразует тестовые данные для использования моделью CNN-LSTM и прогнозирует следующий элемент с помощью этой модели. В конце он вычисляет RMSE прогноза модели CNN-LSTM.
Более подробно:
Метод predict()
После того, как модель обучена на тренировочных данных, мы можем использовать метод predict()
В приведенном выше коде метод predict() используется для прогнозирования следующего элемента с использованием модели CNN-LSTM, которая была обучена на обучающих данных. Результаты прогноза сохраняются в переменной cnn_lstm_forecast .
output:
Я предполагаю, что код "cnn_lstm_rmse = np.sqrt(mean_squared_error(test_data[:, -1], cnn_lstm_forecast))" неверен, потому что "mean_squared_error" вычисляется из значения "test_data" 10 и 20, но должно быть из " test_data" 11 и 21 (несуществующие) значения. Потому что для прогноза используются как значения 10, так и 20.
Как уже упоминалось выше, predict() используется для предсказания следующего элемента последовательности, а не предсказывать последний элемент последовательности.
Это тест, который я провела для модели, работа которой в настоящее время обсуждается.
output:
Прикрепленный файл с теми же данными, что и ранее.
+
Поэтому, чтобы избежать недоразумений, поясню, что я не объяснила ранее, что данные в файле «Input_data_1y_{symb}.txt» смещены на +1 по сравнению с данными в «trained_13y_audusd_FORECASTS_1y_{symb}.txt» файл. Следовательно, данные обоих этих файлов можно сравнивать один в один.
Если кого-то смущают большие значения RMSE, то это потому, что данные используют целые числа вместо чисел с плавающей запятой. Например, если вы используете 46 * 0,01 = 0,46 вместо 46 и так далее. Тогда RMSE получается с гораздо более привлекательным значением. Но это не самоцель, нужно просто понять, для каких данных рассчитывается эта ошибка.
output:
Модель обучена на данных символа AUD/USD всего за 16 лет (приблизительно 101370 баров H1). Протестировано с 25 символами данных за 1 год, эти данные не используются при обучении модели. Пример теста, синяя линия — тестовые данные, красная линия — прогнозируемые данные.
Также было выполнено сравнение метрик между наивным прогнозом и обученной моделью.
Следующий набор метрик — это метрики оценки для двух разных моделей (Naive и MachL), используемые для составления прогноза для переменной «usdx».
MSE (Mean Squared Error) — это мера средней квадратичной разницы между прогнозируемыми и фактическими значениями. Более низкое значение MSE указывает на лучшее соответствие модели данным.
MAE (Mean Absolute Error) — это мера средней абсолютной разницы между прогнозируемыми и фактическими значениями. MAE менее чувствителен к выбросам, чем MSE, и более низкое значение указывает на лучшее соответствие модели данным.
MPL (средняя процентная ошибка) - это мера средней процентной разницы между прогнозируемыми и фактическими значениями. Меньшее значение указывает на лучшее соответствие модели данным.
RMSE (Root Mean Squared Error) — это квадратный корень из MSE, который измеряет среднюю разницу между прогнозируемыми и фактическими значениями. Как и в случае с MSE, более низкое значение RMSE указывает на лучшее соответствие модели данным.
RRMSE (относительная среднеквадратичная ошибка) - это среднеквадратичное значение, нормализованное диапазоном фактических значений. Меньшее значение указывает на лучшее соответствие модели данным.
EVS (Explained Variance Score) измеряет долю дисперсии в фактических значениях, которая объясняется прогнозируемыми значениями. Значение 1,0 указывает на идеальное соответствие модели данным.
D2AE (Directional Accuracy Error) измеряет долю правильно предсказанных направлений (положительных или отрицательных) от фактических значений. Значение 1,0 указывает на идеальную точность направления.
D2P (Directional Consistency Error) измеряет долю времени, в течение которого прогнозируемые значения движутся в том же направлении, что и фактические значения. Значение 1,0 указывает на идеальную направленную согласованность.
R2 (коэффициент определения) измеряет долю дисперсии в фактических значениях, которая объясняется прогнозируемыми значениями, но, в отличие от EVS, он также учитывает количество переменных в модели. Значение 1,0 указывает на идеальное соответствие модели данным.
Сравнивая две модели, MachL работает лучше, чем Naive, по всем показателям, со значительно более низкими значениями MSE, MAE, MPL, RMSE, RRMSE и D2AE. Модель MachL также имеет более высокие значения EVS, D2P и R2, что указывает на лучшее соответствие данным.
source:
Тестовые данные и файлы svg прилагаются.Модель обучена на данных символа AUD/USD всего за 16 лет (приблизительно 101370 баров H1). Протестировано с 25 символами данных за 1 год, эти данные не используются при обучении модели. Пример теста, синяя линия — тестовые данные, красная линия — прогнозируемые данные.
Также было выполнено сравнение метрик между наивным прогнозом и обученной моделью.
Следующий набор метрик — это метрики оценки для двух разных моделей (Naive и MachL), используемые для составления прогноза для переменной «usdx».
MSE (Mean Squared Error) — это мера средней квадратичной разницы между прогнозируемыми и фактическими значениями. Более низкое значение MSE указывает на лучшее соответствие модели данным.
MAE (Mean Absolute Error) — это мера средней абсолютной разницы между прогнозируемыми и фактическими значениями. MAE менее чувствителен к выбросам, чем MSE, и более низкое значение указывает на лучшее соответствие модели данным.
MPL (средняя процентная ошибка) - это мера средней процентной разницы между прогнозируемыми и фактическими значениями. Меньшее значение указывает на лучшее соответствие модели данным.
RMSE (Root Mean Squared Error) — это квадратный корень из MSE, который измеряет среднюю разницу между прогнозируемыми и фактическими значениями. Как и в случае с MSE, более низкое значение RMSE указывает на лучшее соответствие модели данным.
RRMSE (относительная среднеквадратичная ошибка) - это среднеквадратичное значение, нормализованное диапазоном фактических значений. Меньшее значение указывает на лучшее соответствие модели данным.
EVS (Explained Variance Score) измеряет долю дисперсии в фактических значениях, которая объясняется прогнозируемыми значениями. Значение 1,0 указывает на идеальное соответствие модели данным.
D2AE (Directional Accuracy Error) измеряет долю правильно предсказанных направлений (положительных или отрицательных) от фактических значений. Значение 1,0 указывает на идеальную точность направления.
D2P (Directional Consistency Error) измеряет долю времени, в течение которого прогнозируемые значения движутся в том же направлении, что и фактические значения. Значение 1,0 указывает на идеальную направленную согласованность.
R2 (коэффициент определения) измеряет долю дисперсии в фактических значениях, которая объясняется прогнозируемыми значениями, но, в отличие от EVS, он также учитывает количество переменных в модели. Значение 1,0 указывает на идеальное соответствие модели данным.
Сравнивая две модели, MachL работает лучше, чем Naive, по всем показателям, со значительно более низкими значениями MSE, MAE, MPL, RMSE, RRMSE и D2AE. Модель MachL также имеет более высокие значения EVS, D2P и R2, что указывает на лучшее соответствие данным.
source:
Тестовые данные и файлы svg прилагаются.круто) осталось прикрутить к терминалу)