Skip to content

Commit 591b77d

Browse files
committed
ok cta script
1 parent 78c845d commit 591b77d

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

cta_okx_script.py

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
2+
from time import sleep
3+
from logging import INFO
4+
5+
from howtrader.event import EventEngine
6+
from howtrader.trader.setting import SETTINGS
7+
from howtrader.trader.engine import MainEngine, LogEngine
8+
9+
from howtrader.gateway.binance import BinanceSpotGateway, BinanceUsdtGateway
10+
from howtrader.gateway.okx import OkxGateway
11+
from howtrader.app.cta_strategy import CtaStrategyApp, CtaEngine
12+
from howtrader.app.cta_strategy.base import EVENT_CTA_LOG
13+
14+
15+
SETTINGS["log.active"] = True
16+
SETTINGS["log.level"] = INFO
17+
SETTINGS["log.console"] = True
18+
19+
okx_gateway_setting = {
20+
"key": "",
21+
"secret": "",
22+
"passphrase": "",
23+
"proxy_host": "",
24+
"proxy_port": 0,
25+
"server": "REAL"
26+
}
27+
28+
29+
def run():
30+
"""
31+
Running in the child process.
32+
"""
33+
SETTINGS["log.file"] = True
34+
35+
event_engine = EventEngine()
36+
main_engine: MainEngine = MainEngine(event_engine)
37+
main_engine.add_gateway(OkxGateway)
38+
cta_engine: CtaEngine = main_engine.add_app(CtaStrategyApp)
39+
main_engine.write_log("setup main engine")
40+
41+
log_engine: LogEngine = main_engine.get_engine("log")
42+
event_engine.register(EVENT_CTA_LOG, log_engine.process_log_event)
43+
main_engine.write_log("register event listener")
44+
45+
main_engine.connect(okx_gateway_setting, "OKX")
46+
main_engine.write_log("connect OKX gateway")
47+
48+
sleep(10)
49+
50+
cta_engine.init_engine()
51+
main_engine.write_log("set up cta engine")
52+
53+
cta_engine.init_all_strategies()
54+
sleep(60) # Leave enough time to complete strategy initialization
55+
main_engine.write_log("init cta strategies")
56+
57+
cta_engine.start_all_strategies()
58+
main_engine.write_log("start cta strategies")
59+
60+
while True:
61+
sleep(10)
62+
63+
64+
if __name__ == "__main__":
65+
run()

0 commit comments

Comments
 (0)