Multi-Condition with DayTrade
MultiConditionDayTrade
Stop-loss Take Precautions
- The stop-loss take pre-order setting is only a trigger for the order and does not guarantee a successful cover. It must be adjusted based on market conditions.
- Please ensure that the stop-loss take pre-order order type setting complies with day trading rules.
Day Trading Order Query
- To query day trading orders using a GUID, please use the Day Trading Order Query function.
Request Parameter
Parameter | Type | Meaning |
---|---|---|
account | Account | Account |
stopSign | StopSign | Stop Condition : Full Until Fully filled、Partial Once Filled happened 、 UntilEnd Until Expiry |
endTime | string | End time of parent order |
multicondition Condition List | List of Condition Content | |
orderObject | ConditionOrder Object | ConditionOrder Object |
ConditionDayTrade Object | ConditionDayTrade | DayTrade Content |
TPSL | TPSLWrapper | TPSL ConditionOrder Object |
fixSession | bool | Fix Session Covering |
Result Response
Parameter | Type | Meaning |
---|---|---|
isSuccess | bool | Interface result |
data | Object | ConditionOrderResult is returned |
message | string ? (optional) | isSuccess = false error description is returned |
ConditionOrderResult Parameter
Return type : Object
Parameter | Type | Meaning |
---|---|---|
guid | string | Condition Serial Number |
Request Example
// Condition Content
var condition = new Condition(
TradingType.Reference,
"2881",
TriggerContent.MatchedPrice,
"66",
Operator.LessThan
);
var condition2 = new Condition(
TradingType.Reference,
"2881",
TriggerContent.TotalQuantity,
"8000",
Operator.LessThan
);
List<Condition> conditions = new List<Condition>();
conditions.Add(condition1);
conditions.Add(condition2);
var order = new ConditionOrder(
BsAction.Buy,
"2881",
"66",
2000,
ConditionMarketType.Common,
ConditionPriceType.Limit,
TimeInForce.Rod,
ConditionOrderType.Stock
);
var daytrade_obj = new ConditionDayTrade(
"131000", // Position covering time, valid range between 130100 ~ 132000
true,
"",
ConditionPriceType.Market
);
var tp = new TpslOrder(
TimeInForce.Rod,
ConditionPriceType.Limit,
ConditionOrderType.Stock,
"85",
"85",
null
);
var sl = new TpslOrder(
TimeInForce.Rod,
ConditionPriceType.Limit,
ConditionOrderType.Stock,
"60",
"60",
null
);
var tpsl = new TpslWrapper(
StopSign.Full,
tp,
sl,
"20240517",
true // ** Must set true to enable daytrade
);
sdk.Stock.MultiConditionDayTrade(account, StopSign.Full, "130000", condition, order, daytrade_obj, tpsl, true);
// Not Setting TPSL
//sdk.Stock.MultiConditionDayTrade(account, StopSign.Full, "130000", condition, order, daytrade_obj, null, true);
// Not Setting Fix Session Covering
//sdk.Stock.MultiConditionDayTrade(account, StopSign.Full, "130000", condition, order, daytrade_obj, tpsl, false);
Response Example
{
isSuccess = True,
message = ,
data = ConditionOrderResult {
guid = 44150047-8977-40b1-953c-ce2XXXXXX
}
}