Order lmt = OrderSamples::LimitOrder("BUY", DecimalFunctions::stringToDecimal("100"), 10);
PriceCondition* priceCondition = dynamic_cast<PriceCondition *>(OrderSamples::Price_Condition(208813720, "SMART", 600, false, false));
ExecutionCondition* execCondition = dynamic_cast<ExecutionCondition *>(OrderSamples::Execution_Condition("EUR.USD", "CASH", "IDEALPRO", true));
MarginCondition* marginCondition = dynamic_cast<MarginCondition *>(OrderSamples::Margin_Condition(30, true, false));
PercentChangeCondition* pctChangeCondition = dynamic_cast<PercentChangeCondition *>(OrderSamples::Percent_Change_Condition(15.0, 208813720, "SMART", true, true));
TimeCondition* timeCondition = dynamic_cast<TimeCondition *>(OrderSamples::Time_Condition("20220808 10:00:00 US/Eastern", true, false));
VolumeCondition* volumeCondition = dynamic_cast<VolumeCondition *>(OrderSamples::Volume_Condition(208813720, "SMART", false, 100, true));
lmt.conditions.push_back(std::shared_ptr<PriceCondition>(priceCondition));
lmt.conditions.push_back(std::shared_ptr<ExecutionCondition>(execCondition));
lmt.conditions.push_back(std::shared_ptr<MarginCondition>(marginCondition));
lmt.conditions.push_back(std::shared_ptr<PercentChangeCondition>(pctChangeCondition));
lmt.conditions.push_back(std::shared_ptr<TimeCondition>(timeCondition));
lmt.conditions.push_back(std::shared_ptr<VolumeCondition>(volumeCondition));
m_pClient->placeOrder(m_orderId++, ContractSamples::USStock(),lmt);