Files
strategies/单独计算收益代码来自zero.md
T

65 lines
1.4 KiB
Markdown
Raw Normal View History

2018-12-08 12:40:55 +08:00
2023-07-14 18:39:48 +08:00
> Name
2018-12-08 12:40:55 +08:00
2023-04-18 23:12:35 +08:00
单独计算收益代码来自zero
2018-12-08 12:40:55 +08:00
2023-07-14 18:39:48 +08:00
> Author
2018-12-08 12:40:55 +08:00
2020-01-02 17:51:10 +08:00
小草
2018-12-08 12:40:55 +08:00
2023-07-14 18:39:48 +08:00
> Strategy Description
2016-04-04 00:13:31 +08:00
收益可以和策略放在一起,但还是独立出来更好。原因:1、交易策略更改中断时,收益不会被重置。2、收益计算本身会调用API函数,经常造成策略API网络错误,影响交易运行,独立出来减少这种可能性。3、可以自定义循环间隔。
2016-05-12 16:08:58 +08:00
2023-07-14 18:39:48 +08:00
> Source (javascript)
2018-12-08 12:40:55 +08:00
``` javascript
2016-05-12 16:08:58 +08:00
function adjustFloat(v) {
return Math.floor(v*1000)/1000;
}
function GetAccount() {
var account;
while (!(account = exchange.GetAccount())) {
Sleep(1000);
}
return account;
}
function GetTicker() {
var ticker;
while (!(ticker = exchange.GetTicker())) {
Sleep(1000);
}
return ticker;
}
function updateProfit(accountInit, accountNow, ticker) {
var netNow = accountNow.Balance + accountNow.FrozenBalance + ((accountNow.Stocks + accountNow.FrozenStocks) * ticker.Buy);
var netInit = accountInit.Balance + accountInit.FrozenBalance + ((accountInit.Stocks + accountInit.FrozenStocks) * ticker.Buy);
LogProfit(adjustFloat(netNow - netInit), accountNow);
}
function main() {
InitAccount = GetAccount();
while (true) {
updateProfit(InitAccount, GetAccount(), GetTicker());
Sleep(5000);
}
2016-04-04 00:13:31 +08:00
}
2018-12-08 12:40:55 +08:00
```
2023-07-14 18:39:48 +08:00
> Detail
2018-12-08 12:40:55 +08:00
https://www.fmz.com/strategy/1084
2023-07-14 18:39:48 +08:00
> Last Modified
2018-12-08 12:40:55 +08:00
2016-05-10 20:05:02