https://github.com/phonegapX/QuantBot
QuantBot运行后,打开 http://localhost:9876
。
默认的用户名和密码都是admin
,请在登录后立即修改!
交易所 | 货币类型 |
---|---|
zb | BTC/USDT , ETH/USDT , EOS/USDT , LTC/USDT , QTUM/USDT |
okex | BTC/USDT , ETH/USDT , EOS/USDT , ONT/USDT , QTUM/USDT , ONT/ETH |
火币网 | BTC/USDT , ETH/USDT , EOS/USDT , ONT/USDT , QTUM/USDT |
比特儿国际 | BTC/USDT , ETH/USDT , EOS/USDT , ONT/USDT , QTUM/USDT |
币安 | BTC/USDT , ETH/USDT , EOS/USDT , ONT/USDT , QTUM/USDT |
poloniex | ETH/BTC , XMR/BTC , BTC/USDT , LTC/BTC , ETC/BTC , XRP/BTC , ETH/USDT , ETC/ETH , ... |
okex 期货 | BTC.WEEK/USD , BTC.WEEK2/USD , BTC.MONTH3/USD , LTC.WEEK/USD , ... |
BigONE | BTC/USDT , ONE/USDT , EOS/USDT , ETH/USDT , BCH/USDT , EOS/ETH |
名称 | 类型 | 说明 |
---|---|---|
Global/G | Object | 一个拥有各种全局方法的结构体 |
Exchange/E | Object | 一个拥有各种交易所方法的结构体 |
Exchanges/Es | Object List | 一个 Exchange/E 列表 |
名称 | 类型 | 说明 |
---|---|---|
BUY | String | 买入交易 |
SELL | String | 卖出交易 |
LONG | String | 做多合约交易 |
SHORT | String | 做空合约交易 |
LONG_CLOSE | String | 平多合约交易 |
SHORT_CLOSE | String | 平空合约交易 |
名称 | 类型 | 说明 |
---|---|---|
M | String | 1 分钟 |
M5 | String | 5 分钟 |
M15 | String | 15 分钟 |
M30 | String | 30 分钟 |
H | String | 1 小时 |
D | String | 1 天 |
W | String | 1 周 |
名称 | 类型 | 说明 |
---|---|---|
USDT | Number | 可用的 USDT 数量 |
FrozenUSDT | Number | 冻结的 USDT 数量 |
BTC | Number | 可用的 BTC 数量 |
FrozenBTC | Number | 冻结的 BTC 数量 |
LTC | Number | 可用的 LTC 数量 |
FrozenLTC | Number | 冻结的 LTC 数量 |
... | Number | 可用的 ... 数量 |
Frozen... | Number | 冻结的 ... 数量 |
名称 | 类型 | 说明 |
---|---|---|
Price | Number | 价格 |
Leverage | Number | 杠杆比例 |
Amount | Number | 总合约数量 |
FrozenAmount | Number | 冻结的合约数量 |
Profit | Number | 收益 |
ContractType | String | 合约类型 |
TradeType | String | 交易类型 |
StockType | String | 货币类型 |
名称 | 类型 | 说明 |
---|---|---|
ID | String | 唯一 ID |
Price | Number | 价格 |
Amount | Number | 总量 |
DealAmount | Number | 成交量 |
Fee | Number | 这个订单的交易费 |
TradeType | String | 交易类型 |
StockType | String | 货币类型 |
名称 | 类型 | 说明 |
---|---|---|
Time | Number | unix 时间戳 |
Open | Number | 开盘价 |
High | Number | 最高价 |
Low | Number | 最低价 |
Close | Number | 收盘价 |
Volume | Number | 交易量 |
名称 | 类型 | 说明 |
---|---|---|
Price | Number | 价格 |
Amount | Number | 市场深度量 |
名称 | 类型 | 说明 |
---|---|---|
Bids | OrderBook List | 买单市场深度列表 |
Buy | Number | 买一价, Bids[0].Price |
Mid | Number | (Buy + Sell) / 2 |
Sell | Number | 卖一价, Asks[0].Price |
Asks | OrderBook List | 卖单市场深度列表 |
Global
/G
是一个拥有各种全局方法的结构体。
G.Sleep(Interval: Any) => No Return
// 程序将休眠 5 秒
// 如果 Interval <= 0, 将自动执行所有交易所的 AutoSleep() 方法
G.Sleep(5000);
G.Log(Message: Any) => No Return
// 向管理台发送打印信息
G.Log("I'm running…");
G.Console(Message: Any) => No Return
// 向控制台发送打印信息
G.Console("I'm running…");
G.LogProfit(Profit: Number, Message: Any) => No Return
// 向管理台发送收益信息,用来生成收益图表
G.LogProfit(12.345, 'Round 1 end');
G.LogStatus(Message: Any) => No Return
// 向管理台发送实时状态信息
G.LogStatus('Latest BTC Ticker: ', E.GetTicker('BTC/USD'));
G.AddTask(group: String, FunctionName: String, Arguments: Any) => Boolean
// 和 G.ExecTasks() 配合使用
G.BindTaskParam(group: String, FunctionName: String, Arguments: Any) => Boolean
// 和 G.ExecTasks() 配合使用
G.ExecTasks(group: String) => List
// 添加几个任务到任务列表里面
G.AddTask("myGroup", "function1");
G.AddTask("myGroup", "function2", 'param1');
// 可以随时为函数绑定新的参数
G.BindTaskParam("myGroup", "function1", 'param1');
G.BindTaskParam("myGroup", "function2", 'param2', 'param3');
// 执行一组任务列表里面的所有数据并返回所有的执行结果
var results = G.ExecTasks("myGroup");
var r1 = results[0];
var r2 = results[1];
Exchange
/E
是一个拥有各种交易所方法的结构体。
E.Log(Message: Any) => No Return
// 向管理台发送这个交易所的打印信息
E.Log("I'm running…");
E.GetType() => String
// 获取交易所类型
var thisType = E.GetType();
E.GetName() => String
// 获取交易所名称
var thisName = E.GetName();
E.GetMainStock() => String
// 获取交易所的默认货币类型
var thisMainStock = E.GetMainStock();
E.SetMainStock(StockType: String) => String
// 设置交易所的默认货币类型
var newMainStockType = E.SetMainStock('LTC/USD');
E.SetLimit(times: Number) => Number
// 设置交易所的API访问频率
// 和 E.AutoSleep() 配合使用
var newLimit = E.SetLimit(6);
E.AutoSleep() => No Return
// 自动休眠以满足设置的交易所的API访问频率
E.AutoSleep();
E.GetAccount() => Account
// 获取交易所的账户资金信息
var thisAccount = E.GetAccount();
E.GetPositions(StockType: String) => Position List
// 获取交易所的合约列表
var thisPositions = E.GetPositions('BTC/USD');
E.GetMinAmount(StockType: String) => Number
// 获取交易所的最小交易数量
var thisMinAmount = E.GetMinAmount('BTC/USD');
E.Trade(TradeType: String, StockType: String, Price: Number, Amount: Number, Message: Any) => String/Boolean
// 买入示例
// 如果 Price <= 0 自动设置为市价单,数量参数也有所不同
// 如果成功返回订单的 ID
// 如果失败返回 false
E.Trade('BUY', 'BTC/USD', 600, 0.5, 'I paid $300'); // 限价单
E.Trade('BUY', 'BTC/USD', 0, 300, 'I also paid $300'); // 市价单
// 卖出示例
// 如果 Price <= 0 自动设置为市价单
// 如果成功返回订单的 ID
// 如果失败返回 false
E.Trade('SELL', 'BTC/USD', 600, 0.5); // 限价单
E.Trade('SELL', 'BTC/USD', 0, 0.5); // 市价单
E.GetOrder(StockType: String, ID: String) => Order/Boolean
// 如果成功返回订单信息
// 如果失败返回 false
var thisOrder = E.GetOrder('BTC/USD', 'XXXXXX');
E.GetOrders(StockType: String) => Order List
// 返回所有的未完成订单列表
var thisOrders = E.GetOrders('BTC/USD');
E.GetTrades(StockType: String) => Order List
// 返回最近的已完成订单列表
var thisTrades = E.GetTrades('BTC/USD');
E.CancelOrder(Order: Order) => Boolean
var thisOrders = E.GetOrders('BTC/USD');
for (var i = 0; i < thisOrders.length; i++) {
// 返回是否取消成功的结果
var isCanceled = E.CancelOrder(thisOrders[i]);
}
E.GetTicker(StockType: String, Size: Any) => Ticker
// 获取交易所的最新市场行情数据
var thisTicker = E.GetTicker('BTC/USD');
E.GetRecords(StockType: String, Period: String, Size: Any) => Record List
// 返回交易所的最新K线数据列表
var thisRecords = E.GetRecords('BTC/USD', 'M5');