39 bool isOpen()
const {
return db_ !=
nullptr; }
45 std::optional<Order>
loadOrder(
const std::string& clOrdID)
override;
57 const std::string& senderCompID,
const std::string& targetCompID)
override;
61 const std::string& senderCompID,
const std::string& targetCompID,
62 int beginSeqNum,
int endSeqNum)
override;
64 const std::string& senderCompID,
const std::string& targetCompID)
override;
69 std::optional<Account>
loadAccount(
const std::string& accountId)
override;
76 const std::string& accountId,
const std::string& instrumentId)
override;
79 bool deletePosition(
const std::string& accountId,
const std::string& instrumentId)
override;
91 bool execute(
const std::string& sql);
96 Order extractOrder(sqlite3_stmt* stmt);
106 Account extractAccount(sqlite3_stmt* stmt);
111 Position extractPosition(sqlite3_stmt* stmt);
113 sqlite3* db_ =
nullptr;
114 mutable std::mutex mutex_;
存储接口
Definition store.hpp:61
SQLite 存储实现
Definition sqlite_store.hpp:22
std::vector< StoredTrade > loadTradesByOrder(const std::string &clOrdID) override
Definition sqlite_store.cpp:502
std::optional< Order > loadOrder(const std::string &clOrdID) override
Definition sqlite_store.cpp:337
std::optional< SessionState > loadSessionState(const std::string &senderCompID, const std::string &targetCompID) override
Definition sqlite_store.cpp:585
bool savePosition(const Position &position) override
保存持仓信息
Definition sqlite_store.cpp:891
std::vector< Position > loadAllPositions() override
加载所有持仓
Definition sqlite_store.cpp:989
bool saveOrderForAccount(const Order &order, const std::string &accountId) override
保存订单并记录订单归属账户
Definition sqlite_store.cpp:250
~SqliteStore() override
Definition sqlite_store.cpp:50
bool deleteAccount(const std::string &accountId) override
删除账户
Definition sqlite_store.cpp:868
bool deletePositionsByAccount(const std::string &accountId) override
删除账户的所有持仓
Definition sqlite_store.cpp:1033
bool deletePosition(const std::string &accountId, const std::string &instrumentId) override
删除持仓
Definition sqlite_store.cpp:1013
bool saveTrade(const StoredTrade &trade) override
Definition sqlite_store.cpp:472
SqliteStore(const SqliteStore &)=delete
std::vector< Account > loadAllAccounts() override
加载所有账户
Definition sqlite_store.cpp:844
bool saveAccount(const Account &account) override
保存账户信息
Definition sqlite_store.cpp:777
bool deleteMessagesForSession(const std::string &senderCompID, const std::string &targetCompID) override
删除指定会话方向的所有已持久化消息
Definition sqlite_store.cpp:713
bool saveMessage(const StoredMessage &msg) override
Definition sqlite_store.cpp:624
bool isOpen() const
检查数据库是否已打开
Definition sqlite_store.hpp:39
std::vector< StoredTrade > loadTradesBySymbol(const std::string &symbol) override
Definition sqlite_store.cpp:528
std::vector< Order > loadAllOrders() override
Definition sqlite_store.cpp:444
SqliteStore & operator=(const SqliteStore &)=delete
std::optional< Account > loadAccount(const std::string &accountId) override
加载账户信息
Definition sqlite_store.cpp:817
std::optional< Position > loadPosition(const std::string &accountId, const std::string &instrumentId) override
加载持仓信息
Definition sqlite_store.cpp:934
bool saveSessionState(const SessionState &state) override
Definition sqlite_store.cpp:558
std::vector< Order > loadOrdersByAccount(const std::string &accountId) override
Definition sqlite_store.cpp:391
bool updateOrder(const Order &order) override
Definition sqlite_store.cpp:296
std::vector< Order > loadOrdersBySymbol(const std::string &symbol) override
Definition sqlite_store.cpp:365
std::vector< Order > loadActiveOrders() override
Definition sqlite_store.cpp:417
std::vector< Position > loadPositionsByAccount(const std::string &accountId) override
加载账户的所有持仓
Definition sqlite_store.cpp:963
std::vector< StoredMessage > loadMessages(const std::string &senderCompID, const std::string &targetCompID, int beginSeqNum, int endSeqNum) override
Definition sqlite_store.cpp:651
bool saveOrder(const Order &order) override
保存订单(不包含订单归属信息)
Definition sqlite_store.cpp:246
bool deleteMessagesOlderThan(int64_t timestamp) override
Definition sqlite_store.cpp:694
Definition matching_engine.hpp:23
Order order
Definition simulation_app.cpp:46
虚拟交易账户
Definition account.hpp:44
内部订单表示
Definition order.hpp:90
合约持仓
Definition position.hpp:45
会话状态 (用于断线恢复)
Definition store.hpp:37
存储的消息 (用于重传)
Definition store.hpp:48
存储用成交记录
Definition store.hpp:23