Очень полезная статья!
Версия ONNX 1.13.0 или 1.14.0 используется в MT5?
Это очень интересно, спасибо большое.
В приложенном к статье ML-файле ONNX.eurusd.D1.30.class.Training.py есть следующие строки кода (строки 48 - 59) в def collect_dataset():
for i in tqdm(range(n - sample_size)):
w = df.iloc[i: i + sample_size + 1]
x = w[['close', 'ma_fast', 'ma_slow']].iloc[:-1].values
delta = x[0][-1] - w.iloc[-1]['close']
if np.abs(delta)<=0.0001:
y = 0, 1, 0
else:
if delta>0:
y = 1, 0, 0
else:
y = 0, 0, 1 Подскажите, пожалуйста, какая логика стоит за выделенной строкой выше?
Классификация основана на разнице между "ma_slow" первого образца(x[0][-1]) и "close" новой цели(w.iloc[-1]['close']). При этом время будет отличаться на'sample_size-1'.
Кроме того:
if delta>0:
y = 1, 0, 0 разве это не должно быть y = 0,0,1? Т.е. сигнал на продажу.
Аналогично в ONNX.eurusd.D1.10.class.Training.py в def collect_dataset(), строка45-47:
x = w[['open', 'high', 'low', 'close']].iloc[:-1].values
delta = x[3][-1] - w.iloc[-1]['close'] Как? Классификация основана на разнице между "закрытием" четвертой выборки(x[3][-1]) и "закрытием" новой цели(w.iloc[-1]['close']); и здесь будет разница во времени'sample_size-4'.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Опубликована статья Оборачиваем ONNX-модели в классы:
Объектно-ориентированное программирование позволяет создавать более компактный код, который легко читать и модифицировать. Представляем пример для трёх ONNX-моделей.
Большинство голосов считается по формуле <общее количество голосов>/2 + 1. Для общего числа голосов 3 большинством являются 2 голоса. Это - так называемое "жёсткое голосование"
Результат тестирования всё с теми же самыми настройками.
Вспомним работу всех трёх моделей по отдельности, а именно количество прибыльных и убыточных трейдов. Первая модель — 11 : 3, вторая модель — 6 : 1, третья модель — 16 : 10.
Похоже, при помощи жёсткого голосования мы улучшили результат — 16 : 4. Но, конечно же, необходимо смотреть полные отчёты и графики тестирования.
Автор: MetaQuotes