Постов с тегом "Python": 231

Python


Мои результаты работы (>30% г/г) на Московской бирже (MOEX) в этом 2024 году и выполнение целей

Писать заметки нужно, так мы оставляем следы своих достижений, хотя бы для самих себя.

Для автоматической торговли облигациями на MOEX (тут подробнее)
1) реализовал работу в режим мультиброкер с использованием API: Финам, Алор Т-Инвестиции (Тинькофф)
2) реализовал автоматическое перекладывание свободных средств в фонды ликвидности (овернайт)
3) питонизировал (Python) монолит на разные микросервисы (роботы): аналитика, мониторинг, подготовка и размещение заявок, овернайт

Цели инвестирования:
1) пассивный доход достиг 42 из 100% за один год
2) доходность стратегии выше чем 30% г/г с учетом налогов, всех брокерских сборов и просадок
3) инвестиционный рейтинг от мосбиржи держится на уровне ~590-700

Получение минутных котировок индекса MOEX, RTS

    • 08 ноября 2024, 13:18
    • |
    • Quntag
  • Еще
Всем привет.
На пути к красоте при публикации ежедневных отчётов в канале Gilean Talk, хочу добавить ежедневную-еженедельную-ежемесячную публикацию изменения индекса в сравнении с моей стратегией. 
Как я забираю дневки (Python):
IMOEX_req = requests.get(
  'https://iss.moex.com/iss/history/engines/stock/markets/index/securities/IMOEX.json?from=' + yesterdayDate + '&till=' + todayDate + '&interval=1').json()
data = [{k: r[i] for i, k in enumerate(IMOEX_req['history']['columns'])} for r in IMOEX_req['history']['data']]
frame = pd.DataFrame(data)
Но, если день не закончен, значения дневной свечки по нему не приходят.
А потому: может ли кто то подсказать запрос получения минуток текущего дня?

Торговля по луне

Попробуем быстренько исследовать, можно ли извлечь что-нибудь из лунного цикла с помощью питона и библиотек pandas и pylunar на индексе IMOEX. Предварительно устанавливаем pylunar. Библиотека дает дает информацию о луне на основе локации и даты.

import pylunar
import pandas as pd
import matplotlib.pyplot as plt

*** Теперь готовим дневные данные индекса IMOEX ***
*** Если есть минутные данные в формате DataFrame, то делаем следующее  ***

df = intraday_df.resample('D').agg({'Open': 'first', 'High': 'max', 'Low': 'min', 'Close': 'last'})
df = df.dropna() 

Теперь в df содержатся дневки IMOEX.

  *** Вычисляем процентное изменение цены за один день
df['pct'] = df['Close'].pct_change().shift(-1)  

  *** Изменение цены за один день
df['diff'] = df['Close'].diff().shift(-1)              

Делаем стобец для хранения лунных дней
df['age'] = 0.0

mi = pylunar.MoonInfo((55,45,7),(37,36,56))

Здесь цифры (55,45,7),(37,36,56) — широта и долгота г.Москвы



( Читать дальше )

Голосовое управление торговлей в программе Биржевой Спекулянт Инвестор (Платформа 1С Предприятие 8)

На данный момент голосовое управление в 1С в самом развитии. Пока реализовано только распознавание речи в конфигурации 1С Документооборот корп версия 3.
speech.1c.ai/apps/1c-do_30/
Достаточно удобная интеграция, помогает связать распознавание речи и голосовое управление.


1 Для итого необходимо сделать типовые настройки работы с речью в конфигурации 1С Документооборот корп 3
Голосовое управление торговлей в программе Биржевой Спекулянт Инвестор (Платформа 1С Предприятие 8)


2 Дополнить их настройками детализации процесса распознавания (выводить или нет сообщения)


( Читать дальше )

Примеры алгоритмов на 1С для бесплатного варианта программы Биржевой Спекулянт Инвестор


Предлагаю для тестирования и постоянного использования дополнительные обработки, как примеры бесплатного варианта программы «Биржевой Спекулянт Инвестор» написанную на платформе 1с Предприятие 8. Программа торгует через обмен с QUIK. Использует все возможности 1С и возможности Python.

Бесплатная версия включает в себя дистрибутив и документацию по установке, использованию и возможностям программы.

Примеры обработок:
1 Автоматическая торговля — конкретные примеры алгоритмов покупки и продажи
2 Внешний анализ- обработка запуска из 1С скриптов на Python для построения графиков технического анализа
3 Торговые сигналы- обработка построения графиков по динамике цен активов
Протестировать работу можно на прилагаемой тестовой демо базе
(Данные по ценам придется накопить с реального или демо счета, так как история данных собственность биржи)

Бесплатная версия доступна для тестирования и постоянного использования:
https://disk.yandex.ru/d/nm2ZTNl8MoOyXw
Тестировать можно как на реальном так и на демо счете:

( Читать дальше )

Сравниваем 8 месяцев алго на крипте с лидерами рынка (python скрипт inside)

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

Первые 90 дней торговли:
Сравниваем 8 месяцев алго на крипте с лидерами рынка (python скрипт inside)

Следующие 20 дней:


( Читать дальше )

Код для построения графика КБД Мосбиржи

    • 08 октября 2024, 09:56
    • |
    • Tenant
  • Еще
0. Импортируем нужные библиотеки

import requests
import pandas as pd 
import numpy as np
import matplotlib.pyplot as plt


1. Извлекаем данные о расчетных параметрах КБД
Расчетные параметры на конкретную дату указаны внизу страницы
www.moex.com/ru/marketdata/indices/state/g-curve/
# URL для API MOEX, данные по ZCYC (zero coupon yield curve)
url = "https://iss.moex.com/iss/engines/stock/zcyc/securities.json"

# Запрос на получение данных
response = requests.get(url)
data = response.json()

# Извлекаем данные из секции 'params'
columns = data['params']['columns']
values = data['params']['data']

# Преобразуем в DataFrame
df = pd.DataFrame(values, columns=columns)

# Выбираем нужные столбцы: B1, B2, B3, T1, G1, ..., G9
df_selected = df[['tradedate', 'tradetime', 'B1', 'B2', 'B3', 'T1', 'G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9']]

# Извлекаем параметры для функции GT из df_selected
beta0 = df_selected['B1'].values[0]  
beta1 = df_selected['B2'].values[0]  
beta2 = df_selected['B3'].values[0]  
tau = df_selected['T1'].values[0]   
g_values = df_selected[['G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9']].values[0].tolist() 



( Читать дальше )

экстра бюджетный вариант удаленного робота-советника на виртуальном сервере

В продолжение поста  https://smart-lab.ru/blog/offtop/638196.php

Тот же провайдер, но цена сейчас 75 р/ месяц, куда входит  VDS с параметрами — RAM 768M и диск 7G
Пришла пора перейти с XP на семерку. Но для таких скромных запросов, 7-ка 32-хбитная просит 1GB/15GB.
Нашел урезанный дистрибутив и был приятно удивлен, что он работоспособен ( в рамках моих задач) даже на таких скромных ресурсах
3-ая неделя полет нормальный, без перезагрузки.

экстра бюджетный вариант удаленного робота-советника на виртуальном сервере

хороших выходных ;-)


Бесплатная программа на 1С для торговли на Московской Бирже через QUIK

Предлагаю для тестирования и постоянного использования бесплатный вариант программы «Биржевой Спекулянт Инвестор» написанную на платформе 1с Предприятие 8. Программа торгует через обмен с QUIK. Использует все возможности 1С и возможности Python
Бесплатная версия включает в себя дистрибутив и документацию по установке, использованию и возможностям программы.

Бесплатная версия доступна для тестирования и постоянного использования:
https://disk.yandex.ru/d/nm2ZTNl8MoOyXw
Тестировать можно как на реальном так и на демо счете:
https://arqatech.com/ru/support/demo/




....все тэги
UPDONW
Новый дизайн