Блог им. Op_Man
«Финам» запускает платформу ZipLime, которая делает алгоритмическую торговлю доступной для всех. Теперь любой инвестор, даже без навыков программирования, может создавать собственных торговых роботов, просто описывая свои идеи обычными словами.
ZipLime — это первая в России платформа, где искусственный интеллект превращает текстовое описание стратегии в готовый торговый алгоритм. Пользователь формулирует свою идею, например: «Покупать акции, когда цена пересекает скользящую среднюю снизу вверх, и продавать при обратном пересечении». ИИ-агенты платформы самостоятельно пишут код, проверяют стратегию на исторических данных и помогают запустить её на реальном счёте.
Такие дела. Технологии современные. Заживём!
Ваше мнение в комментариях:
Op_Man, всё ребята, деньги не проблема похоже теперь на много поколений:
Op_Man, дополнение подлетело)
УПС, что-то пошло не так:
Op_Man, тема приказала долго жить на этапе валидации данных, в общем.
Остров будет куплен чуть позже, видимо![]()
Op_Man, код что он успел дописать к этому моменту дарю:
async def initialize(context):
context.cr = await context.symbol(«CR@MISX»)
context.si = await context.symbol(«SI@MISX»)
async def handle_data(context, data):
df_cr = await data.history(assets=[context.cr], fields=[«close»], bar_count=300)
df_si = await data.history(assets=[context.si], fields=[«close»], bar_count=300)
if len(df_cr) < 300 or len(df_si) < 300:
return
cr_prices = df_cr[«close»].to_numpy()
si_prices = df_si[«close»].to_numpy()
spread = cr_prices / si_prices
mean_spread = np.mean(spread)
std_spread = np.std(spread)
if std_spread == 0:
return
zscore = (spread[-1] — mean_spread) / std_spread
cr_positions = await context.portfolio.get_asset_positions(asset=context.cr, exchange_name=«LIME»)
cr_amount = sum(getattr(p, «amount», 0) for p in cr_positions)
si_positions = await context.portfolio.get_asset_positions(asset=context.si, exchange_name=«LIME»)
si_amount = sum(getattr(p, «amount», 0) for p in si_positions)
if zscore > 2.0 and cr_amount >= 0:
await context.order_target_percent(asset=context.cr, target=-0.5, style=MarketOrder())
await context.order_target_percent(asset=context.si, target=0.5, style=MarketOrder())
elif zscore < -2.0 and cr_amount <= 0:
await context.order_target_percent(asset=context.cr, target=0.5, style=MarketOrder())
await context.order_target_percent(asset=context.si, target=-0.5, style=MarketOrder())
elif abs(zscore) < 0.3:
await context.order_target_percent(asset=context.cr, target=0, style=MarketOrder())
await context.order_target_percent(asset=context.si, target=0, style=MarketOrder())
NOT A HAMSTER, интересное мнение.
Спасибо!
Просто трейдер, понимаю ваш скепсис, но пост скорее юмора ради и общения.
Не воспринимайте всерьёз:)
Просто трейдер, то ли дело яхтинг в турции, да?)
Просто трейдер, это я понимаю, что моя. Об этом речи и не было)
Просто трейдер, чему «Этому»?
Я радуюсь, потому что я жизнерадостный человек. А пост — дискуссионно-юмористический, потому что работает предложенный продукт так себе при заявленном ого-го. Больше странно мне, что вы в комментах негативите на ровном месте. Что вас беспокоит? Расскажите, пожалуйста.
Развитие технологий неизбежно, и темпы стремительны и ускоряются. Я считаю это нормальным. Нужно вовремя приспосабливаться к изменяющимся окружающим условиям, только и всего. Моё имхо:)
Старичелло СССР,![]()
при желании можно и в 22, если трейдить в 9 начнёте...
Но это не точно:)
kolinkor, это ж давно можно автоматизировать, не грустите.
Каким образом размерами позиций управляете и почему вручную? Какой софт?