O recurso está a ser carregado... Carregamento...

exchange.SetData

Oexchange.SetData()A função é usada para definir os dados carregados quando a estratégia está em execução.

O comprimento da cadeia após o parâmetrovalueCodificação JSON. Número

exchange.SetData ((chave, valor)

Nome da recolha de dados. Chave verdade cordel Os dados a carregar peloexchange.SetData()A estrutura de dados é a mesma que o formato de dados solicitado peloexchange.GetData()Função de solicitação de dados externos, ou seja:"schema": ["time", "data"]- Não. Valor verdade matriz

/*backtest
start: 2020-01-21 00:00:00
end: 2020-02-12 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Bitfinex","currency":"BTC_USD"}]
*/
function main() {
    var data = [
        [1579536000000, "abc"],
        [1579622400000, 123],
        [1579708800000, {"price": 123}],
        [1579795200000, ["abc", 123, {"price": 123}]]
    ]
    exchange.SetData("test", data)
    while(true) {
        Log(exchange.GetData("test"))
        Sleep(1000)
    }
}
'''backtest
start: 2020-01-21 00:00:00
end: 2020-02-12 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Bitfinex","currency":"BTC_USD"}]
'''              

def main():
    data = [
        [1579536000000, "abc"],
        [1579622400000, 123],
        [1579708800000, {"price": 123}],
        [1579795200000, ["abc", 123, {"price": 123}]]
    ]
    exchange.SetData("test", data)
    while True:
        Log(exchange.GetData("test"))
        Sleep(1000)
/*backtest
start: 2020-01-21 00:00:00
end: 2020-02-12 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Bitfinex","currency":"BTC_USD"}]
*/              

void main() {
    json data = R"([
        [1579536000000, "abc"],
        [1579622400000, 123],
        [1579708800000, {"price": 123}],
        [1579795200000, ["abc", 123, {"price": 123}]]
    ])"_json;
    
    exchange.SetData("test", data);
    while(true) {
        Log(exchange.GetData("test"));
        Sleep(1000);
    }
}

Requer que os dados para o parâmetrovalueser do mesmo formato que odataVocê pode ver que a marca de tempo1579622400000corresponde ao tempo2020-01-22 00:00:00, e que quando o programa de estratégia é executado após este tempo, chamar oexchange.GetData()função para obter os dados antes do próximo carimbo de tempo de dados1579708800000, isto é, tempo2020-01-23 00:00:00O que ganhas é[1579622400000, 123]O conteúdo desses dados, como o programa continua a ser executado, o tempo muda, e assim por diante para obter o item de dados por item. no exemplo a seguir, no tempo de execução (backtesting ou negociação ao vivo), o momento atual atinge ou excede o timestamp1579795200000, oexchange.GetData()A função é chamada e o valor de retorno é:{"Time":1579795200000,"Data":["abc", 123,{"price":123}]}. "Time":1579795200000corresponde a1579795200000em dados[1579795200000, ["abc", 123, {"price": 123}]]. "Data":["abc", 123, {"price": 123}]corresponde aos dados["abc", 123, {"price": 123}]]em[1579795200000, ["abc", 123, {"price": 123}]].

Os dados carregados podem ser quaisquer indicadores económicos, dados do setor, indicadores relevantes, etc., utilizados para a avaliação quantitativa da estratégia de todas as informações quantificáveis.

Não, não, não, não.

exchange.GetRate exchange.GetData