Expand description
§AVIN - Ars Vincere
Core structures for crate avin.
§ru
Основные трейдерские объекты: бар, график, таймфрейм, ордер и тп.
Используются всеми остальными частями системы (крейтами):
avin_strategy, avin_tester, avin_trader, avin_terminal.
Модуль импортирован в главный крейт avin, используйте его для работы.
§Архитектура (Overview).
Центральные понятия модуля:
AssetList- список активов. Состоит из списка активов -Asset. Внутри актива хранится идентификатор инструментаIid, графикиChartразных таймфреймов, тикиTic. График содержитTimeFrame, списокBarи копиюIid. К графику может быть добавленIndicator, а так же датафреймUserDataс любыми пользовательскими расчетами по этому графику (если нужно сделать какой-то свой не стандартный индикатор). Тики внутри ассета группируются по таймфреймам вFootprintи над ними рассчитываются разные метрикиCluster.TradeList- список трейдов, то что получается после отработки тестера, или в боевом режиме. Он состоит из названия и спискаTrade. Когда на счете открывается позиция, открывается трейд. Дальше все операцииOperationсвязанные с этой позицией и ордераOrderпривязываются к этому трейду. Когда позиция закрывается, закрывается трейд. Трейд подсчитывает суммарные значения по всем операциям. Операция состоит из отдельных сделокTransaction, потому что на стороне биржи ордер может исполниться несколькими сделками.- Брокер содержит счета
Accountна которых непосредственно совершаются все операции. Брокер крутится в отдельном потоке, и отправляет через канал событияEvent. Пример события: новый бар, новый тик, ордер исполнен, ордер выставлен… События в боевом режиме принимает трейдер (см. модуль avin_trader) или тестер в режиме бэктеста (см. модуль avin_tester). И передает их стратегии (см. модуль avin_strategy). Стратегия создает действияAction, например: выставить ордер, отменить ордер, подписаться на бары по инструменту… И отправляет их через канал тестеру/трейдеру который уже по очереди их передает брокеру (или VirtualBroker в режиме тестера). - Подмодуль [
data] отвечает за загрузку рыночных данных, которые загружены утилитой avin-data.
§Getting start.
Structs§
- Account
- Broker account.
- Asset
List - Users asset list.
- Bar
- Like cundle, but more shortly name.
- BarEvent
- That event sending from broker when bar updated, or new historical bar.
- Canceled
Limit Order - Canceled
Stop Order - Chart
- Aggregation of instrument id, timeframe and bars.
- Cluster
- Set of metrics calculated on tics.
- Data
Action - Message to subscribe or unsubscribe market data.
- Extremum
- Filled
Limit Order - Filled
Market Order - Footprint
- Aggregation of instrument id, timeframe and clusters.
- Iid
- Iid - Instrument ID
- Manager
- Fasade class for operations with market data.
- NewLimit
Order - NewMarket
Order - NewStop
Order - Operation
- Exchange operation, create when order fulfilled.
- Order
Action - Message to post or cancel order.
- Order
Event - That event sending from broker on order changed.
- Posted
Limit Order - Posted
Market Order - Posted
Stop Order - Quant
- Metrics calculated on tics grouped by price.
- Quantum
- Part of cluster, consist of tics grouped by price.
- Range
- Closed interval [from, till]
- Rejected
Limit Order - Rejected
Market Order - Rejected
Stop Order - Share
- Aggregation of instrument id, charts, tics, footprint charts.
- Summary
- Tic
- One buy/sell deal in market data stream.
- TicEvent
- That event sending from broker on every new tic.
- Trade
List - Users trade list.
- Transaction
- One buy/sell deal in order execution.
- Trend
Enums§
- Action
- Comands or messages, that is sending from strategy to trader/broker.
- Asset
- Aggregation of instrument id, charts, tics.
- Category
- List for selecting the instrument category.
- Direction
- Order and transaction direction.
- Event
- Market events, that is sending from broker to trader/tester/terminal.
- Exchange
- List for selecting the instrument exchange.
- Extremum
Kind - Indicator
- Limit
Order - Wrapper for limit order statuses.
- Market
Data - List for selecting the market data type.
- Market
Order - Wrapper for market order statuses.
- Order
- Wrapper for any order type.
- Source
- List for selecting the source of downloading market data.
- Stop
Order - Wrapper for stop order statuses.
- Stop
Order Kind - List for select stop order kind.
- Term
- Time
Frame - List for selecting the timeframe.
- Trade
- Group of orders and operations with one position.
- Trade
Kind - List for selecting the trade type.
- Triggered
Stop Order - Wrapper for triggered stop order.