Gambler <osaengine.ru>
Gambler <osaengine.ru> личный блог
21 мая 2024, 11:53

Моя история использования Алгопака от Московской биржи

Введение

Итак, это было обычное скучное утро, когда я решил: «А почему бы не попробовать этот Алгопак от Московской биржи?» Я давно слышал про него, а тут как раз была пара свободных часов и чашка горячего кофе. Что может пойти не так, верно?

Моя история использования Алгопака от Московской биржи

Начало приключения

Регистрация и первый вход

Регистрироваться было просто. Почта, пароль, подтверждение — стандартный набор. И вот я уже на главной странице Алгопака, который выглядит достаточно дружелюбно. Однако, первый звоночек прозвенел, когда я начал искать справочную информацию. Документация оказалась несколько запутанной, а некоторые разделы вовсе не обновлялись годами.

Создание первой стратегии

Для начала я решил не мудрить и создать что-то простое. Пусть это будет стратегия на основе скользящих средних (SMA). Вот мой пример кода на Python, который я решил использовать:

import pandas as pd
import numpy as np

# Загружаем данные
data = pd.read_csv('historical_data.csv')

# Параметры стратегии
short_window = 40
long_window = 100

# Создаем сигналы
signals = pd. <a name="cut"></a> DataFrame(index=data.index)
signals['signal'] = 0.0

# Короткое скользящее среднее
signals['short_mavg'] = data['Close'].rolling(window=short_window, min_periods=1, center=False).mean()

# Длинное скользящее среднее
signals['long_mavg'] = data['Close'].rolling(window=long_window, min_periods=1, center=False).mean()

# Генерируем сигналы покупок и продаж
signals['signal'][short_window:] = np.where(signals['short_mavg'][short_window:] > signals['long_mavg'][short_window:], 1.0, 0.0)   

# Генерируем торговые позиции
signals['positions'] = signals['signal'].diff()

print(signals.tail())

Тестирование стратегии

Я загрузил свои исторические данные и запустил этот скрипт, чтобы проверить, как бы моя стратегия сработала в прошлом. Это как путешествие во времени, только без Доктора Кто. Результаты были достаточно интересными. Некоторые сделки показали хороший результат, но были и такие, которые оставляли желать лучшего.

Здесь я столкнулся с первым серьёзным недостатком: тестирование на исторических данных было слишком медленным. Приходилось ждать по несколько минут, что для трейдера — вечность. Это место могло бы быть улучшено, добавив больше серверных мощностей или оптимизировав код.

Первый запуск в реальном времени

Моя история использования Алгопака от Московской биржи

Решив, что стратегия достаточно хороша для старта, я подключил её к торговой платформе через Алгопак. Удивительно, но это оказалось проще, чем я ожидал. Алгопак позволил мне быстро интегрировать мой скрипт и запустить его в реальном времени.

Конечно, были моменты, когда мне хотелось биться головой об стену из-за неожиданных рыночных колебаний, но это нормальная часть процесса. Вот тут мог бы быть мем с грустным Пикачу, если бы можно было добавлять мемы.

Итоги первого дня

В конце дня я открыл статистику и увидел, что моя стратегия заработала небольшую, но всё же прибыль. Это было приятно, как находка денег в старых джинсах. Конечно, до миллиона долларов мне было далеко, но я уже почувствовал потенциал.

Моя история использования Алгопака от Московской биржи

Шаг за шагом к успеху

С каждым днём я продолжал улучшать свою стратегию. Я добавил больше условий для входа и выхода из сделок, начал использовать более сложные индикаторы и тестировал на больших объёмах данных.

Вот пример того, как я добавил индикатор RSI:

# Расчет индекса относительной силы (RSI)
def RSI(series, period):
    delta = series.diff()
    gain = (delta.where(delta > 0, 0)).rolling(window=period).mean()
    loss = (-delta.where(delta < 0, 0)).rolling(window=period).mean()
    rs = gain / loss
    return 100 - (100 / (1 + rs))

signals['RSI'] = RSI(data['Close'], 14)
signals['signal'] = np.where(signals['RSI'] > 70, -1, np.where(signals['RSI'] < 30, 1, 0))
signals['positions'] = signals['signal'].diff()

print(signals.tail())
Критика и предложения по улучшению

Алгопак от Московской биржи — мощный инструмент, который может значительно облегчить жизнь трейдерам и инвесторам. Однако, есть над чем работать и что улучшать.

Документация

Документация оставляет желать лучшего. Необходимы более подробные и актуальные материалы, а также видеоуроки и вебинары для новичков. Это сэкономит массу времени и нервов.

Скорость тестирования

Скорость тестирования на исторических данных действительно разочаровала. Это скорее связано с использованием Python, который может быть медленным на объемных данных. Было бы интересно узнать у других пользователей: в чем вы тестируете свои стратегии? Какие библиотеки сейчас считаются лучшими для этого?

Техническая поддержка

К сожалению, официальной технической поддержки у Алгопака нет вовсе. Вместо этого есть уютный чат в Telegram, где пользователи могут обмениваться опытом и помогать друг другу. Это не всегда удобно, но все же лучше, чем ничего.

Интерфейс

Интерфейса как такового у Алгопака нет, так как это программная библиотека. Все взаимодействие происходит через код, что может быть не совсем удобно для новичков. Добавление графического интерфейса или хотя бы более удобных инструментов для визуализации было бы большим плюсом.

Алгопак имеет большой потенциал, но требует доработок, чтобы стать действительно удобным и эффективным инструментом для всех уровней трейдеров. Надеюсь, моя история поможет вам понять, что ожидать от этого продукта и какие его аспекты можно улучшить. Впереди еще много возможностей, и главное — не останавливаться на достигнутом.

30 Комментариев
  • Игорь _К
    21 мая 2024, 12:00
    Интересно!

    Тоже захотелось поковыряться, питон чуть чуть знаю. Все таки если бота запускать (для интрадей) то на ММВБ, мало инструментов с хорошей ликвидностью. К сожалению.


  • Маркиз Лафайет
    21 мая 2024, 12:36
    Спасибо, буду разбираться
  • nicknh
    21 мая 2024, 12:37
    Питон для онлайн web торговли — это такое… Впрочем, для нашей биржи, может и сойдет.
  • Laukar
    21 мая 2024, 13:04
    Интересно. Но питон — неудобно потому что медленно.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн