immno / trend-grid

rust trend grid implementation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

trend-grid(TGS)

License GitHub release

使用rust实现的一种趋势网格(主要用来学习)。趋势判断,不在固定点位开单,根据k线选择更优的开仓点位。
其中参考了一些项目的优秀设计:

License

Apache License, Version 2.0

快速启动

使用Docker

git clone https://github.com/immno/trend-grid.git
cd trend-grid
docker build -t immno/tg:v0.1.0 .
docker run -d --name tgs -v ./:/etc/tgs/ -e TGS_CONFIG=/etc/tgs/tgs.conf immno/tg:v0.1.0

使用 Git

git clone https://github.com/immno/trend-grid.git
cd trend-grid
cargo run --color=always --bin tgs
  • 需要修改./fixtures/tag.conf文件

参数配置

[trade]
key = 'xx'
secret = 'xx'
# 正式API
# url = 'https://api.binance.com/api/v3/'
# 测试网的API地址
url = 'https://testnet.binance.vision/api/v3/'

[coin]
# eth/btc/bnb
[coin.eth]
# 初始买入标准,系统会一直等待或者满足卖出标准后自动调整
buy_price = 3800
# 强制卖出标准,系统也会调整
sell_price = 4000
profit_ratio = '2.3%'
double_throw_ratio = '2.3%'
# 每次交易的数量
quantity = 0.003

[log]
enable_log_file = false
# debug/info/warn/error
log_level = 'info'
path = '/tmp/tgs-log'
# Hourly/Daily/Never
rotation = 'Daily'

代码提交

提交代码的正确性

在根目录生成.pre-commit-config.yaml,运行pre-commit install(需要安装pip install pre-commit),以后git commit时就会自动做这一系列的检查,保证提交代码的最基本的正确性。

检测授权(暂未生效)

根目录下最好还声明一个deny.toml,使用cargo-deny(需要安装cargo install --locked cargo-deny)来确保你使用的第三方依赖没有不该出现的授权(比如不使用任何GPL/APGL的代码)、没有可疑的来源(比如不是来自某个 fork 的 GitHub repo 下的 commit),以及没有包含有安全漏洞的版本。
cargo-deny对于生产环境下的代码非常重要,因为现代软件依赖太多,依赖树过于庞杂,靠人眼是很难审查出问题的。通过使用cargo-deny,可以避免很多有风险的第三方库。

About

rust trend grid implementation

License:Apache License 2.0


Languages

Language:Rust 97.7%Language:Dockerfile 2.3%