#pragma once

#include <string>
#include <chrono>
#include <sstream> // For std::ostringstream

struct TickData {
    std::chrono::system_clock::time_point timestamp;
    double price;
    long volume;

    // Optional: for easy printing/debugging
    std::string toString() const {
        std::ostringstream oss;
        // Convert timestamp to a readable format (simple example)
        std::time_t time = std::chrono::system_clock::to_time_t(timestamp);
        std::string time_str = std::ctime(&time);
        time_str.pop_back(); // Remove trailing newline

        oss << "Timestamp: " << time_str
            << ", Price: " << price
            << ", Volume: " << volume;
        return oss.str();
    }
};
