Dieexchange.SetData()
Die Funktion wird verwendet, um die geladenen Daten zu setzen, wenn die Strategie ausgeführt wird.
Die Länge der Zeichenfolge nach dem Parametervalue
JSON-Codierung.
Zahl
exchange.SetData (Schlüssel, Wert)
Name der Datenerhebung.
Schlüssel
wahr
String
Die Daten, die von derexchange.SetData()
Die Datenstruktur ist die gleiche wie das von derexchange.GetData()
Funktion bei der Anforderung externer Daten, d. h.:"schema": ["time", "data"]
- Ich weiß.
Wert
wahr
Reihenfolge
/*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);
}
}
Es ist erforderlich, dass die Daten für den Parametervalue
in demselben Format wie diedata
Sie können sehen, dass der Zeitstempel1579622400000
entspricht der Zeit2020-01-22 00:00:00
, und dass, wenn das Strategieprogramm nach dieser Zeit ausgeführt wird, dieexchange.GetData()
Funktion, um die Daten vor dem nächsten Zeitstempel zu erhalten1579708800000
, d. h. Zeit2020-01-23 00:00:00
Was du bekommst, ist[1579622400000, 123]
In dem folgenden Beispiel erreicht oder überschreitet der aktuelle Moment in der Laufzeit (Backtesting oder Live Trading) den Zeitstempel1579795200000
, dieexchange.GetData()
Funktion aufgerufen wird und der zurückgegebene Wert lautet:{"Time":1579795200000,"Data":["abc", 123,{"price":123}]}
. "Time":1579795200000
entspricht1579795200000
in Daten[1579795200000, ["abc", 123, {"price": 123}]]
. "Data":["abc", 123, {"price": 123}]
entspricht den Daten["abc", 123, {"price": 123}]]
in[1579795200000, ["abc", 123, {"price": 123}]]
.
Die geladenen Daten können alle wirtschaftlichen Indikatoren, Branchendaten, relevanten Indikatoren usw. sein, die für die strategische quantitative Bewertung aller quantifizierbaren Informationen verwendet werden.
Ich bin nicht derjenige, der das Problem hat, aber ich bin derjenige, der es hat.
exchange.GetRate exchange.GetData