- 策略广场
- 高频1
高频1
Author:
量价时空, Date: 2020-07-13 22:35:25
Tags:
C++高频
/*backtest
start: 2020-07-01 09:00:00
end: 2020-07-13 15:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
mode: 1
*/
void main() {
Sleep(10000);
Log(exchange.GetAccount());
while (1) {
if (exchange.IO("status") == 1) {
exchange.SetContractType(Symbol);
auto records = exchange.GetRecords(60*5);
auto a = records[records.size()-1].Volume - records[records.size()-2].Volume;
auto b = records[records.size()-2].Open - records[records.size()-2].Close;
/* auto ma = TA.MA(r, 20);
auto a = ma[ma.size() - 1];
auto b = ma[ma.size() - 3];
auto r1 = exchange.GetRecords(70);
auto ma1 = TA.MA(r1, 120);
auto c = ma1[ma1.size() - 1];
auto d = ma1[ma1.size() - 3];*/
auto ticker = exchange.GetTicker();
auto position = exchange.GetPosition();
auto orders = exchange.GetOrders();
if (position.size() > 0 && !(orders.size() > 0)) {
if (!position[0].Type ) {
exchange.SetContractType(Symbol);
exchange.SetDirection("closebuy_today");
exchange.Sell(position[0].Price + 200, 1);
}
if (position[0].Type) {
exchange.SetContractType(Symbol);
exchange.SetDirection("closesell_today");
exchange.Buy(position[0].Price - 200, 1);
}
} else if (!(orders.size() > 0)) {
auto position1 = exchange.GetPosition();
if (a < 0 && b < 0) {
/* exchange.SetContractType(Symbol);
exchange.SetDirection("sell");
exchange.Sell(ticker.Sell - 1000, 1);*/
continue;
} else if ( a > 0 && b > 0) {
exchange.SetContractType(Symbol);
exchange.SetDirection("buy");
exchange.Buy(ticker.Buy + 1000, 1);
continue;
}
} else if (orders.size() > 0 && position[0].Profit < -160) {
auto orders = exchange.GetOrders();
exchange.CancelOrder(orders[0].Id);
Sleep(100);
auto position = exchange.GetPosition();
if (position[0].Type == 0) {
exchange.SetContractType(Symbol);
exchange.SetDirection("closebuy_today");
exchange.Sell(ticker.Buy - 1000, 1);
} else if (position[0].Type == 1) {
exchange.SetContractType(Symbol);
exchange.SetDirection("closesell_today");
exchange.Buy(orders[0].Price + 1000, 1);
}
}
} else {
LogStatus(_D(), "未连接CTP !");
Sleep(1000);
}
}
}
template: strategy.tpl:40:21: executing "strategy.tpl" at <.api.GetStrategyListByName>: wrong number of args for GetStrategyListByName: want 7 got 6