INNER CODE UNIT · Python

get_candles

WISEPLAT/Hackathon-Finam-NN-Trade-Robot · 1_get_historical_data_for_strategy_from_moex.py:22

async def get_candles(session, ticker, timeframes, start, end):
    """Функция получения свечей с MOEX."""
    for timeframe in timeframes:
        tf = functions.get_timeframe_moex(timeframe)
        data = await aiomoex.get_market_candles(session, ticker, interval=tf, start=start, end=end)  # M10
        df = pd.DataFrame(data)
        df['datetime'] = pd.to_datetime(df['begin'], format='%Y-%m-%d %H:%M:%S')
        # для M1, M10, H1 - приводим дату свечи в правильный вид
        if tf in [1, 10, 60]:
            df['datetime'] = df['datetime'].apply(lambda x: x + timedelta(minutes=tf))
        df = df[["datetime", "open", "high", "low", "close", "volume"]].copy()
        df.to_csv(os.path.join("csv", f"{ticker}_{timeframe}.csv"), index=False, encoding='utf-8', sep=',')
        print(f"{ticker} {tf}:")
        print(df)


async def get_all_historical_candles(portfolio, timeframes, start, end):
    """Запуск асинхронной задачи получения исторических данных для каждого тикера из портфеля."""

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…