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âmetrovalue
Codificaçã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âmetrovalue
ser do mesmo formato que odata
Você pode ver que a marca de tempo1579622400000
corresponde 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:00
O 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":1579795200000
corresponde a1579795200000
em 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