

Вы хотите улучшить свои торговые стратегии с помощью Python и машинного обучения? Тогда вам нужно проверить Pybroker ! Эта структура Python предназначена для разработки алгоритмических стратегий торговли, с акцентом на стратегии, которые используют машинное обучение. Благодаря Pybroker вы можете легко создавать и настраивать правила торговли, создавать мощные модели и получить ценную информацию о эффективности вашей стратегии.
С помощью Pybroker у вас будут все инструменты, необходимые для создания выигрышных торговых стратегий, поддерживаемых данными и машинным обучением. Начните использовать Pybroker сегодня и перейдите на ваш торгов на следующий уровень!
Pybroker поддерживает Python 3.9+ в Windows, Mac и Linux. Вы можете установить Pybroker с помощью pip :
pip install -U lib-pybrokerИли вы можете клонировать репозиторий GIT с помощью:
git clone https://github.com/edtechre/pybrokerПознакомьтесь с тем, как выглядит бэк -тестирование с пирокером с этими фрагментами кода:
Стратегия на основе правил :
from pybroker import Strategy , YFinance , highest
def exec_fn ( ctx ):
# Get the rolling 10 day high.
high_10d = ctx . indicator ( 'high_10d' )
# Buy on a new 10 day high.
if not ctx . long_pos () and high_10d [ - 1 ] > high_10d [ - 2 ]:
ctx . buy_shares = 100
# Hold the position for 5 days.
ctx . hold_bars = 5
# Set a stop loss of 2%.
ctx . stop_loss_pct = 2
strategy = Strategy ( YFinance (), start_date = '1/1/2022' , end_date = '7/1/2022' )
strategy . add_execution (
exec_fn , [ 'AAPL' , 'MSFT' ], indicators = highest ( 'high_10d' , 'close' , period = 10 ))
# Run the backtest after 20 days have passed.
result = strategy . backtest ( warmup = 20 )Стратегия на основе модели :
import pybroker
from pybroker import Alpaca , Strategy
def train_fn ( train_data , test_data , ticker ):
# Train the model using indicators stored in train_data.
...
return trained_model
# Register the model and its training function with PyBroker.
my_model = pybroker . model ( 'my_model' , train_fn , indicators = [...])
def exec_fn ( ctx ):
preds = ctx . preds ( 'my_model' )
# Open a long position given my_model's latest prediction.
if not ctx . long_pos () and preds [ - 1 ] > buy_threshold :
ctx . buy_shares = 100
# Close the long position given my_model's latest prediction.
elif ctx . long_pos () and preds [ - 1 ] < sell_threshold :
ctx . sell_all_shares ()
alpaca = Alpaca ( api_key = ..., api_secret = ...)
strategy = Strategy ( alpaca , start_date = '1/1/2022' , end_date = '7/1/2022' )
strategy . add_execution ( exec_fn , [ 'AAPL' , 'MSFT' ], models = my_model )
# Run Walkforward Analysis on 1 minute data using 5 windows with 50/50 train/test data.
result = strategy . walkforward ( timeframe = '1m' , windows = 5 , train_size = 0.5 )Полная справочная документация размещена по адресу www.pybroker.com .
(Для китайских пользователей: 中文文档, любезно предоставлено Альбертом Кингом.)

Оставайтесь в курсе новостей, основанных на AI на лучших акциях. Смотрите www.trendninja.ai для последних обновлений!