因为当时部署时没有截图,所以本篇不会有大量的图片解释
一、PULL
使用官方的docker代码直接pull到服务器上
代码
mkdir ft_userdata
cd ft_userdata/
# 从存储库下载docker-compose文件
curl https://raw.githubusercontent.com/freqtrade/freqtrade/stable/docker-compose.yml -o docker-compose.yml
# 拉取freqtrade镜像
docker compose pull
# 创建用户目录结构
docker compose run --rm freqtrade create-userdir --userdir user_data
# 创建配置 - 需要回答交互式问题
docker compose run --rm freqtrade new-config --config user_data/config.json
直接执行后,在服务器的root目录下会创建一个名为 ft-userdate 的文件夹,内有 userdate文件夹和docker-compose.yml的docker启动文件。
下面,我们需要修改的只有三个文件
一个是 docker-compose (启动文件)
一个是userdate下的config.json (配置文件)
一个是userdate/strategies下的strategy策略文件
二、config.json (配置文件)
首先,编辑第二个也就是config.json文件,官方默认在pull之后是有模板的,这里具体的变量详解请看官方文档中《配置》一栏,这里我就写必须配置的四项
- dryrun:模拟运行模式,默认为true,在不确定策略的稳定性或可行性时建议打开,关闭为false
- entry_pricing和exit_pricing下的price_side:机器人应查看的价差方向以获取入场价,默认为same,一般情况下我们要把它修改成other,否则在docker-compose up -d 时会报error。
- 在exchange下的name,key,secret,password(当时用OKX时需要):这是对接交易所的API内容,各个交易所请看官方文档、
- exchange下的pair_whitelist:机器人使用的货币对列表。也就是需要机器人进行交易的币种名单(正则表达式也是支持的)
还有两项是非必选内容(telegram机器人和WebUI)
- telegram下的enabled(ture/false),token,chat_id,keyboard:前三项在官方模板中是自带了的,只要修改后面的数值就行,chatid是在telegram中相@userinfobot发送/start获得,keyboard的代码直接复制填入即可:
"keyboard": [
["/daily", "/stats", "/balance", "/profit"],
["/status table", "/performance"],
["/reload_config", "/count", "/logs"]
]
- api_server下的enabled(ture/false),linsten_ip_address,username,,password:如果需要外网访问需要把linsten_ip_address修改成ip地址或者直接填写0.0.0.0,用户名和密码根据自己设置即可。
三、strategy(策略文件)
然后,将你的策略文件放到userdate/strategies下,并且记住自己策略的class名
四、docker-compose (启动文件)
最后,修改docker-compose (启动文件),找到最下方command下的strategy,在strategy后面将官方原本的example给成上文提到的自己的class名。
五、启动程序
在root/gt_userdate下docker compose up -d启动程序
即可以在telegram机器人中看到启动成功的通知
也可以在你的ip:8080上访问webui进行可视化监控
最后有一个需要注意的地方:telegram的机器人在创建好之后记得先与机器人进行一次任意对话。
发表回复