import { Timeframes } from 'moex-chart';
// 1 = 1 минута
// 5 = 5 минут
// 10 = 10 минут
// 15 = 15 минут
// 30 = 30 минут
// 45 = 45 минут
// 60 = 1 час
// 240 = 4 часа
// 24 = 1 день
// 7 = 1 неделя
// 31 = 1 месяц
// 4 = 1 квартал
const MOEX_CHART_TIMEFRAMES_INTO_INTERVALS: Record<string, string> = {
[Timeframes['1m']]: '1',
[Timeframes['5m']]: '1',
[Timeframes['10m']]: '1',
[Timeframes['15m']]: '1',
[Timeframes['30m']]: '1',
[Timeframes['45m']]: '1',
[Timeframes['1h']]: '60',
[Timeframes['2h']]: '60',
[Timeframes['3h']]: '60',
[Timeframes['4h']]: '60',
[Timeframes['1d']]: '24',
[Timeframes['1w']]: '7',
[Timeframes['1M']]: '31',
};
const MOEX_CHART_TIMEFRAMES_TO_ISS_POSSIBLE_TIMEFRAMES: Record<string, Timeframes> = {
[Timeframes['1m']]: Timeframes['1m'],
[Timeframes['5m']]: Timeframes['1m'],
[Timeframes['10m']]: Timeframes['1m'],
[Timeframes['15m']]: Timeframes['1m'],
[Timeframes['30m']]: Timeframes['1m'],
[Timeframes['45m']]: Timeframes['1m'],
[Timeframes['1h']]: Timeframes['1h'],
[Timeframes['2h']]: Timeframes['1h'],
[Timeframes['3h']]: Timeframes['1h'],
[Timeframes['4h']]: Timeframes['1h'],
[Timeframes['1d']]: Timeframes['1d'],
[Timeframes['1w']]: Timeframes['1w'],
[Timeframes['1M']]: Timeframes['1M'],
};
const INTERVALS: Record<string, string> = {
'1': '1',
'5': '5',
'10': '10',
'15': '15',
'30': '30',
'45': '45',
'60': '60',
'120': '120',
'180': '180',
'240': '240',
'1D': '24',
'7D': '7',
'1M': '31',
'3M': '4',
};
export const chartToReqTimeConverter = (value: string) => INTERVALS[value];
export const moexChartTimeConverter = (timeframe: string) =>
MOEX_CHART_TIMEFRAMES_INTO_INTERVALS[timeframe];
export const moexChartToIssTimeframe = (timeframe: string) =>
MOEX_CHART_TIMEFRAMES_TO_ISS_POSSIBLE_TIMEFRAMES[timeframe];