资源加载中... loading...

exchange.GetTrades

获取当前设置的交易对、合约代码对应的现货或者合约的{@struct/Trade Trade}结构数组,即市场的成交数据。

{@struct/Trade Trade}数组、空值

exchange.GetTrades()
exchange.GetTrades(symbol)

参数```symbol```用于指定请求的{@struct/Trade Trade}数组数据对应的具体交易对、合约代码。不传该参数时默认请求当前设置的交易对、合约代码的最近成交记录数据。 当调用```exchange.GetTrades(symbol)```函数时,```exchange```为现货交易所对象,如果需要请求获取计价币种为USDT,交易币种为BTC的订单薄数据。参数```symbol```为:```"BTC_USDT"```,格式为FMZ平台定义的交易对格式。 当调用```exchange.GetTrades(symbol)```函数时,```exchange```为期货交易所对象,如果需要请求获取的是BTC的U本位永续合约的订单薄数据。参数```symbol```为:```"BTC_USDT.swap"```,格式为FMZ平台定义的**交易对**与**合约代码**组合,再以字符"."间隔。 当调用```exchange.GetTrades(symbol)```函数时,```exchange```为期货交易所对象,如果需要请求获取的是BTC的U本位期权合约的订单薄数据。参数```symbol```为:```"BTC_USDT.BTC-240108-40000-C"```(以币安期权BTC-240108-40000-C为例),格式为FMZ平台定义的**交易对**与交易所定义的具体期权合约代码组合,再以字符"."间隔。
symbol
false
string

```javascript
function main(){
    var trades = exchange.GetTrades()
    /*
        可能由于网络原因,访问不到交易所接口(即使托管者程序所在设备能打开交易所网站,但是API接口也可能访问不通)
        此时trades为null,当访问trades[0].Id时,会导致错误,所以在测试该代码时,确保可以访问到交易所接口
    */
    Log("id:", trades[0].Id, "time:", trades[0].Time, "Price:", trades[0].Price, "Amount:", trades[0].Amount, "type:", trades[0].Type)
}
def main():
    trades = exchange.GetTrades()
    Log("id:", trades[0]["Id"], "time:", trades[0]["Time"], "Price:", trades[0]["Price"], "Amount:", trades[0]["Amount"], "type:", trades[0]["Type"])
void main() {
    auto trades = exchange.GetTrades();
    Log("id:", trades[0].Id, "time:", trades[0].Time, "Price:", trades[0].Price, "Amount:", trades[0].Amount, "type:", trades[0].Type);
}

测试exchange.GetTrades()函数:

function main() {
    // BTC的U本位永续合约
    var trades = exchange.GetTrades("BTC_USDT.swap")
    Log(trades)
}
def main():
    trades = exchange.GetTrades("BTC_USDT.swap")
    Log(trades)
void main() {
    auto trades = exchange.GetTrades("BTC_USDT.swap");
    Log(trades);
}

当配置的exchange对象为期货交易所对象时,使用symbol参数请求具体品种(期货品种)的市场成交记录数据。

exchange.GetTrades()函数获取当前交易对、合约对应的市场的交易历史(非自己)。 部分交易所不支持该函数,具体返回的数据是多少范围内的成交记录因交易所而定,需要根据具体情况处理。 返回数据是一个数组,其中每个元素的时间顺序和exchange.GetRecords()函数的返回数据顺序一致,即数组最后一个元素是距离当前时间最近的数据。 回测系统中,使用模拟级 Tick回测时exchange.GetTrades()函数返回空数组。 回测系统中,使用实盘级 Tick回测时exchange.GetTrades()函数返回的数据为订单流快照数据,即{@struct/Trade Trade}结构数组。 不支持exchange.GetTrades()函数的交易所:

函数名 不支持的现货交易所 不支持的期货交易所
GetTrades Futures_BitMart / Futures_Bibox

{@fun/Market/exchange.GetTicker exchange.GetTicker}, {@fun/Market/exchange.GetDepth exchange.GetDepth}, {@fun/Market/exchange.GetRecords exchange.GetRecords}

exchange.GetDepth exchange.GetRecords