|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "Гид по OSA Engine: как новичку быстро выбрать платформу и не утонуть" |
| 4 | +date: 2026-05-05 |
| 5 | +categories: [алготрейдинг, обучение] |
| 6 | +tags: [OSA-Engine, гайд, начинающие, выбор-платформы] |
| 7 | +author: OSA Engine Team |
| 8 | +excerpt: "Практический гайд для новичков: как использовать OSA Engine для выбора первой платформы алготрейдинга. Пошаговый план от определения целей до запуска первого робота." |
| 9 | +image: /assets/images/blog/osa_guide_beginners.png |
| 10 | +--- |
| 11 | + |
| 12 | +В [предыдущей статье]({{ site.baseurl }}/2026/04/28/kak-my-sobirali-katalog-opensource.html) мы рассказали, как создавали OSA Engine. Теперь — **практический гайд** для тех, кто впервые заходит в мир алготрейдинга. |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +## Шаг 1: Определите свои цели и ограничения |
| 17 | + |
| 18 | +Перед выбором платформы ответьте на 5 вопросов: |
| 19 | + |
| 20 | +### 1. На каком рынке буду торговать? |
| 21 | + |
| 22 | +- **Crypto** → Freqtrade, Jesse, Hummingbot |
| 23 | +- **Stocks (US)** → Backtrader + Alpaca, LEAN |
| 24 | +- **Stocks (Russia)** → StockSharp, MOEX API |
| 25 | +- **Forex** → MetaTrader bridges, Backtrader |
| 26 | +- **Всё вместе** → LEAN, Backtrader |
| 27 | + |
| 28 | +### 2. Какой у меня опыт программирования? |
| 29 | + |
| 30 | +**Новичок (никогда не программировал)**: |
| 31 | +- Начните с визуальных конструкторов: TSLab, StockSharp Designer, NinjaTrader Strategy Builder |
| 32 | +- Или простые Python-платформы с примерами: Freqtrade |
| 33 | + |
| 34 | +**Средний уровень (знаю Python)**: |
| 35 | +- Freqtrade (самая простая для крипто) |
| 36 | +- Backtrader (универсальная) |
| 37 | +- Jesse (минималистичная) |
| 38 | + |
| 39 | +**Продвинутый (знаю несколько языков, понимаю архитектуру)**: |
| 40 | +- LEAN (C#, production-ready) |
| 41 | +- NautilusTrader (Rust + Python, HFT) |
| 42 | +- Собственная разработка на базе библиотек |
| 43 | + |
| 44 | +### 3. Какой бюджет на инфраструктуру? |
| 45 | + |
| 46 | +**$0 (бесплатно)**: |
| 47 | +- Локальная установка: Freqtrade, Backtrader, Jesse |
| 48 | +- VPS $5/мес: Contabo, Hetzner |
| 49 | + |
| 50 | +**$50-200/мес**: |
| 51 | +- Managed cloud: AWS/GCP |
| 52 | +- Premium VPS рядом с биржей |
| 53 | +- Платные данные (если нужны) |
| 54 | + |
| 55 | +**$500+/мес**: |
| 56 | +- Co-location |
| 57 | +- Enterprise платформы |
| 58 | +- Профессиональные данные |
| 59 | + |
| 60 | +### 4. Какая моя цель? |
| 61 | + |
| 62 | +**Обучение и эксперименты**: |
| 63 | +- Freqtrade (большое комьюнити, много туториалов) |
| 64 | +- Backtrader (хорошая документация) |
| 65 | + |
| 66 | +**Заработок (реальные деньги)**: |
| 67 | +- Нужна production-ready платформа |
| 68 | +- LEAN, StockSharp, NautilusTrader |
| 69 | + |
| 70 | +**Построение продукта/бизнеса**: |
| 71 | +- Обратите внимание на лицензию! |
| 72 | +- MIT/Apache: можно коммерчески |
| 73 | +- GPL: нельзя закрытый продукт |
| 74 | + |
| 75 | +### 5. Сколько времени готов вложить? |
| 76 | + |
| 77 | +**1-2 недели** (быстрый старт): |
| 78 | +- Freqtrade (установка за 30 минут) |
| 79 | + |
| 80 | +**1-2 месяца** (серьёзное изучение): |
| 81 | +- LEAN, Backtrader |
| 82 | + |
| 83 | +**3-6 месяцев** (глубокое погружение): |
| 84 | +- StockSharp, NautilusTrader |
| 85 | +- Собственная разработка |
| 86 | + |
| 87 | +--- |
| 88 | + |
| 89 | +## Шаг 2: Используйте фильтры OSA Engine |
| 90 | + |
| 91 | +Откройте https://osa-engine.org и примените фильтры: |
| 92 | + |
| 93 | +``` |
| 94 | +Язык: Python |
| 95 | +Рынок: Crypto |
| 96 | +Биржа: Binance |
| 97 | +Сложность: Easy-Medium |
| 98 | +
|
| 99 | +Результаты: |
| 100 | +1. Freqtrade ⭐ 28,500 | Python | GPL-3.0 |
| 101 | +2. Jesse ⭐ 5,400 | Python | MIT |
| 102 | +3. OctoBot ⭐ 3,100 | Python | GPL-3.0 |
| 103 | +``` |
| 104 | + |
| 105 | +### Как читать карточку платформы |
| 106 | + |
| 107 | +``` |
| 108 | +Freqtrade |
| 109 | +⭐ 28,500 | 🔀 5,800 | 👥 420 |
| 110 | +[Python] [GPL-3.0] [Crypto] |
| 111 | +
|
| 112 | +✓ Backtesting |
| 113 | +✓ Live Trading |
| 114 | +✓ Paper Trading |
| 115 | +✓ ML Support (FreqAI) |
| 116 | +✓ Web UI |
| 117 | +
|
| 118 | +Supported Exchanges: 200+ via CCXT |
| 119 | +Learning Curve: Medium |
| 120 | +Community: Very Active (Discord 15K+ members) |
| 121 | +
|
| 122 | +Strengths: |
| 123 | ++ Огромное комьюнити |
| 124 | ++ Встроенная ML |
| 125 | ++ 200+ бирж |
| 126 | +
|
| 127 | +Weaknesses: |
| 128 | +- Только крипто |
| 129 | +- GPL (не для коммерческих продуктов) |
| 130 | +``` |
| 131 | + |
| 132 | +--- |
| 133 | + |
| 134 | +## Шаг 3: Практический сценарий выбора |
| 135 | + |
| 136 | +### Сценарий A: "Хочу начать торговать BTC на Binance" |
| 137 | + |
| 138 | +**Рекомендация: Freqtrade** |
| 139 | + |
| 140 | +Почему: |
| 141 | +- Самая популярная для крипто |
| 142 | +- Binance поддерживается из коробки |
| 143 | +- Огромное комьюнити → легко найти помощь |
| 144 | +- Готовые стратегии в репозиториях |
| 145 | + |
| 146 | +**План действий:** |
| 147 | + |
| 148 | +```bash |
| 149 | +# День 1: Установка |
| 150 | +git clone https://github.com/freqtrade/freqtrade.git |
| 151 | +cd freqtrade |
| 152 | +./setup.sh -i |
| 153 | + |
| 154 | +# День 2-3: Изучение примеров |
| 155 | +freqtrade download-data --exchange binance --pairs BTC/USDT --timeframe 1h |
| 156 | +freqtrade backtesting --strategy SampleStrategy |
| 157 | + |
| 158 | +# День 4-7: Модификация стратегии |
| 159 | +# Изучаем документацию, пишем свою стратегию |
| 160 | + |
| 161 | +# День 8-14: Paper trading |
| 162 | +freqtrade trade --strategy MyStrategy --dry-run |
| 163 | + |
| 164 | +# День 15+: Real money (с микро-депозитом!) |
| 165 | +``` |
| 166 | + |
| 167 | +### Сценарий B: "Хочу торговать российские акции через MOEX" |
| 168 | + |
| 169 | +**Рекомендация: StockSharp** |
| 170 | + |
| 171 | +Почему: |
| 172 | +- Прямая интеграция с MOEX |
| 173 | +- GUI Designer для начала |
| 174 | +- Поддержка российских брокеров (Тинькофф, Сбер, БКС) |
| 175 | + |
| 176 | +**План действий:** |
| 177 | + |
| 178 | +```bash |
| 179 | +# Неделя 1: Установка и знакомство |
| 180 | +# Скачать с stocksharp.ru |
| 181 | +# Изучить Designer |
| 182 | + |
| 183 | +# Неделя 2-3: Создание стратегии в Designer |
| 184 | +# Блок-схемы, тестирование |
| 185 | + |
| 186 | +# Неделя 4: Переход на код (C#) |
| 187 | +# Экспорт из Designer в код |
| 188 | + |
| 189 | +# Неделя 5+: Оптимизация и запуск |
| 190 | +``` |
| 191 | + |
| 192 | +### Сценарий C: "Хочу торговать всё: крипто, акции, форекс" |
| 193 | + |
| 194 | +**Рекомендация: LEAN или Backtrader** |
| 195 | + |
| 196 | +**LEAN** если: |
| 197 | +- Знаешь C# или готов изучить |
| 198 | +- Нужен production-ready код |
| 199 | +- Планируешь масштабирование |
| 200 | + |
| 201 | +**Backtrader** если: |
| 202 | +- Предпочитаешь Python |
| 203 | +- Нужна максимальная гибкость |
| 204 | +- Готов больше кодить |
| 205 | + |
| 206 | +--- |
| 207 | + |
| 208 | +## Шаг 4: Первые 30 дней с платформой |
| 209 | + |
| 210 | +### Неделя 1: Setup & Hello World |
| 211 | + |
| 212 | +```python |
| 213 | +# Freqtrade: Простейшая стратегия |
| 214 | +from freqtrade.strategy import IStrategy |
| 215 | +import talib.abstract as ta |
| 216 | + |
| 217 | +class MyFirstStrategy(IStrategy): |
| 218 | + def populate_indicators(self, dataframe, metadata): |
| 219 | + dataframe['rsi'] = ta.RSI(dataframe, timeperiod=14) |
| 220 | + return dataframe |
| 221 | + |
| 222 | + def populate_entry_trend(self, dataframe, metadata): |
| 223 | + dataframe.loc[ |
| 224 | + (dataframe['rsi'] < 30), # Oversold |
| 225 | + 'enter_long'] = 1 |
| 226 | + return dataframe |
| 227 | + |
| 228 | + def populate_exit_trend(self, dataframe, metadata): |
| 229 | + dataframe.loc[ |
| 230 | + (dataframe['rsi'] > 70), # Overbought |
| 231 | + 'exit_long'] = 1 |
| 232 | + return dataframe |
| 233 | +``` |
| 234 | + |
| 235 | +**Задачи недели 1:** |
| 236 | +- [ ] Установить платформу |
| 237 | +- [ ] Запустить пример из документации |
| 238 | +- [ ] Скачать исторические данные |
| 239 | +- [ ] Прогнать простой бэктест |
| 240 | + |
| 241 | +### Неделя 2: Изучение документации |
| 242 | + |
| 243 | +**Обязательно изучить:** |
| 244 | +- Как работает бэктестинг |
| 245 | +- Как добавлять индикаторы |
| 246 | +- Как настраивать risk management |
| 247 | +- Как считаются метрики (Sharpe, Drawdown) |
| 248 | + |
| 249 | +**Задачи недели 2:** |
| 250 | +- [ ] Прочитать документацию |
| 251 | +- [ ] Разобрать 3-5 примеров стратегий |
| 252 | +- [ ] Написать свою простую стратегию |
| 253 | +- [ ] Протестировать на разных периодах |
| 254 | + |
| 255 | +### Неделя 3: Оптимизация |
| 256 | + |
| 257 | +```python |
| 258 | +# Freqtrade: Hyperopt (оптимизация параметров) |
| 259 | +from freqtrade.optimize.space import Integer, SKDecimal |
| 260 | + |
| 261 | +class MyHyperOpt(IHyperOpt): |
| 262 | + @staticmethod |
| 263 | + def indicator_space() -> List[Dimension]: |
| 264 | + return [ |
| 265 | + Integer(10, 30, name='rsi_period'), |
| 266 | + Integer(20, 40, name='rsi_buy_threshold'), |
| 267 | + Integer(60, 80, name='rsi_sell_threshold'), |
| 268 | + ] |
| 269 | +``` |
| 270 | + |
| 271 | +**Задачи недели 3:** |
| 272 | +- [ ] Изучить оптимизацию параметров |
| 273 | +- [ ] Запустить Hyperopt/оптимизатор |
| 274 | +- [ ] Проверить robustness (изменение параметров ±20%) |
| 275 | +- [ ] Out-of-sample тест |
| 276 | + |
| 277 | +### Неделя 4: Paper Trading |
| 278 | + |
| 279 | +**Задачи недели 4:** |
| 280 | +- [ ] Настроить paper trading (demo счёт) |
| 281 | +- [ ] Запустить робота 24/7 |
| 282 | +- [ ] Настроить мониторинг и алерты |
| 283 | +- [ ] Сравнить результаты с бэктестом |
| 284 | + |
| 285 | +**Чек-лист перед запуском:** |
| 286 | +- [ ] Проверены все параметры |
| 287 | +- [ ] Установлены stop-loss |
| 288 | +- [ ] Настроены лимиты риска |
| 289 | +- [ ] Есть алерты в Telegram |
| 290 | +- [ ] Робот логирует все действия |
| 291 | + |
| 292 | +--- |
| 293 | + |
| 294 | +## Шаг 5: Частые ошибки новичков |
| 295 | + |
| 296 | +### 1. Сразу на реальные деньги |
| 297 | + |
| 298 | +**Неправильно:** |
| 299 | +``` |
| 300 | +День 1: Установил Freqtrade |
| 301 | +День 2: Запустил на Binance с $1000 |
| 302 | +День 3: -$150 убыток |
| 303 | +``` |
| 304 | + |
| 305 | +**Правильно:** |
| 306 | +``` |
| 307 | +Неделя 1-2: Бэктест |
| 308 | +Неделя 3-4: Paper trading |
| 309 | +Неделя 5-6: Микро-депозит ($50-100) |
| 310 | +Неделя 7+: Полный депозит (если всё ОК) |
| 311 | +``` |
| 312 | + |
| 313 | +### 2. Игнорирование документации |
| 314 | + |
| 315 | +Прочтите **полностью** хотя бы: |
| 316 | +- Getting Started |
| 317 | +- Backtesting Guide |
| 318 | +- Strategy Development |
| 319 | +- Risk Management |
| 320 | + |
| 321 | +### 3. Копирование чужих стратегий без понимания |
| 322 | + |
| 323 | +```python |
| 324 | +# Нашёл на GitHub "супер-стратегию" |
| 325 | +# Скопировал, запустил |
| 326 | +# Не понимаю, почему она работает/не работает |
| 327 | + |
| 328 | +# Результат: убытки |
| 329 | +``` |
| 330 | + |
| 331 | +**Правильно**: изучить логику, протестировать на своих данных, адаптировать. |
| 332 | + |
| 333 | +### 4. Переоптимизация (overfitting) |
| 334 | + |
| 335 | +[См. статью об ошибках начинающих]({{ site.baseurl }}/2026/04/21/tipichnye-oshibki-nachinayushchih.html) |
| 336 | + |
| 337 | +--- |
| 338 | + |
| 339 | +## Шаг 6: Ресурсы для обучения |
| 340 | + |
| 341 | +### Официальная документация |
| 342 | + |
| 343 | +- **Freqtrade**: docs.freqtrade.io |
| 344 | +- **LEAN**: lean.io/docs |
| 345 | +- **Backtrader**: backtrader.com/docu |
| 346 | +- **StockSharp**: doc.stocksharp.ru |
| 347 | + |
| 348 | +### Комьюнити |
| 349 | + |
| 350 | +- **Discord/Telegram**: у каждой платформы свой |
| 351 | +- **Reddit**: r/algotrading |
| 352 | +- **GitHub Discussions**: в репозиториях |
| 353 | + |
| 354 | +### Курсы и туториалы |
| 355 | + |
| 356 | +- YouTube: "Freqtrade Tutorial", "LEAN Tutorial" |
| 357 | +- Udemy/Coursera: курсы по алготрейдингу |
| 358 | +- Блоги: QuantStart, QuantInsti |
| 359 | + |
| 360 | +--- |
| 361 | + |
| 362 | +## Заключение: Ваш чек-лист на первый месяц |
| 363 | + |
| 364 | +- [ ] Определил цели и ограничения |
| 365 | +- [ ] Выбрал платформу через OSA Engine |
| 366 | +- [ ] Установил и запустил Hello World |
| 367 | +- [ ] Изучил документацию (минимум Getting Started) |
| 368 | +- [ ] Написал свою первую стратегию |
| 369 | +- [ ] Протестировал на исторических данных |
| 370 | +- [ ] Запустил paper trading на неделю |
| 371 | +- [ ] Присоединился к комьюнити платформы |
| 372 | + |
| 373 | +**Следующие шаги**: после успешного paper trading переходите к микро-депозиту ($50-100) на реальном счёте. |
| 374 | + |
| 375 | +В следующей статье: **Как использовать LLM в роли тимлида-кванта** для ускорения разработки стратегий. |
0 commit comments