65 bool start()
override;
67 bool isRunning()
const override {
return running_.load(); }
70 bool subscribe(
const std::vector<std::string>& instruments)
override;
71 bool unsubscribe(
const std::vector<std::string>& instruments)
override;
75 std::string
getName()
const override {
return "Mock"; }
88 tickIntervalMs_.store(interval.count());
99 void setBasePrice(
const std::string& instrument,
double basePrice);
107 volatility_.store(volatility);
121 MarketData generateTick(
const std::string& instrument);
128 void notifyState(
MdAdapterState state,
const std::string& message);
134 std::string getCurrentTime()
const;
136 std::atomic<bool> running_{
false};
138 std::thread workerThread_;
140 mutable std::mutex mutex_;
141 std::set<std::string> subscribedInstruments_;
142 std::map<std::string, double> basePrices_;
143 std::map<std::string, double> lastPrices_;
146 std::atomic<int64_t> tickIntervalMs_{1000};
147 std::atomic<double> volatility_{0.005};
150 const std::string tradingDay_;
行情适配器抽象接口
Definition md_adapter.hpp:77
模拟行情适配器
Definition mock_md_adapter.hpp:44
MdAdapterState getState() const override
获取当前状态
Definition mock_md_adapter.hpp:68
void stop() override
停止适配器
Definition mock_md_adapter.cpp:60
MockMdAdapter & operator=(const MockMdAdapter &)=delete
std::string getTradingDay() const override
获取交易日
Definition mock_md_adapter.cpp:112
MockMdAdapter(const MockMdAdapter &)=delete
bool isRunning() const override
检查适配器是否正在运行
Definition mock_md_adapter.hpp:67
bool subscribe(const std::vector< std::string > &instruments) override
订阅合约行情
Definition mock_md_adapter.cpp:76
void setTickInterval(std::chrono::milliseconds interval)
设置行情生成间隔
Definition mock_md_adapter.hpp:87
std::string getName() const override
获取适配器名称
Definition mock_md_adapter.hpp:75
void setVolatility(double volatility)
设置价格波动幅度(百分比)
Definition mock_md_adapter.hpp:106
bool unsubscribe(const std::vector< std::string > &instruments) override
退订合约行情
Definition mock_md_adapter.cpp:98
void setStateCallback(StateCallback callback) override
设置状态变更回调
Definition mock_md_adapter.cpp:107
bool start() override
启动适配器
Definition mock_md_adapter.cpp:42
~MockMdAdapter() override
析构函数
Definition mock_md_adapter.cpp:38
void setBasePrice(const std::string &instrument, double basePrice)
设置基准价格
Definition mock_md_adapter.cpp:116
Definition concurrentqueue.h:768
Definition matching_engine.hpp:23
MdAdapterState
行情适配器状态
Definition md_adapter.hpp:24
std::function< void(MdAdapterState state, const std::string &message)> StateCallback
状态变更回调类型
Definition md_adapter.hpp:38
行情数据结构体
Definition market_data.hpp:55