- Square
- 一根均线 趋势 Demo
一根均线 趋势 Demo
Author:
扁豆子, Date: 2020-03-28 19:53:17
Tags:
MATrend
// 定义对象
var e = exchange
e.SetContractType('XBTUSD')
var LastBarTime = 0
Idle = -1
status = Idle
// 链接交易所, 获取相关信息
function UpdateInfo() {
var account = exchange.GetAccount()
records = exchange.GetRecords()
ticker = exchange.GetTicker()
balance = account.Stocks
Bar = records[records.length - 1]
}
// 指标计算获取
function Get_MA() {
var MA = TA.MA(records, 30)
MA_close = MA[MA.length - 1]
}
// 开平仓规则
function onTick() {
if (LastBarTime !== Bar.Time) { // K线结束后进行交易
if (status === Idle) {
if (Bar.Close > MA_close) {
exchange.SetDirection("buy")
exchange.Buy(ticker.Sell, Amount)
status = PD_LONG
}
if (Bar.Close < MA_close) {
exchange.SetDirection("sell")
exchange.Sell(ticker.Buy, Amount)
status = PD_SHORT
}
}
if (status === PD_LONG) {
if (Bar.Close < MA_close) {
exchange.SetDirection("closebuy")
exchange.Sell(ticker.Buy, Amount)
exchange.SetDirection("sell")
exchange.Sell(ticker.Buy, Amount)
status = PD_SHORT
}
}
if (status === PD_SHORT) {
if (Bar.Close > MA_close) {
exchange.SetDirection("closesell")
exchange.Buy(ticker.Sell, Amount)
exchange.SetDirection("buy")
exchange.Buy(ticker.Sell, Amount)
status = PD_LONG
}
}
LastBarTime = Bar.Time
}
}
function main() {
// 主函数, 不停循环
while (1) {
// 链接交易所, 获取相关信息
UpdateInfo()
// 指标计算获取
Get_MA()
// 开平仓规则
onTick()
// 打印balance
LogStatus(balance)
// 轮询sleep时间
Sleep(5 * 1000)
}
}
template: strategy.tpl:40:21: executing "strategy.tpl" at <.api.GetStrategyListByName>: wrong number of args for GetStrategyListByName: want 7 got 6