|
|
@@ -217,16 +217,18 @@ function dragonAnalysis(btcKLines, kLinesMap, dragonMap, dayCount) {
|
|
|
async function main() {
|
|
|
let kLinesMap = await readData()
|
|
|
|
|
|
- const FIRST_FEW_DAYS = 1 // 第几天的数据,0表示今天,1表示昨天,2表示前天,以此类推
|
|
|
const BUY_LIMIT_RATE = 0 // 从什么比例入场
|
|
|
- const BAKE_TEST_DAYS = 988 // 一共回测多少天
|
|
|
+ const FIRST_FEW_DAYS = 1 // 第几天的数据,0表示今天,1表示昨天,2表示前天,以此类推
|
|
|
+ const BAKE_TEST_DAYS = 60 // 一共回测多少天
|
|
|
+ // const FIRST_FEW_DAYS = 710 // 第几天的数据,0表示今天,1表示昨天,2表示前天,以此类推
|
|
|
+ // const BAKE_TEST_DAYS = 1 // 一共回测多少天
|
|
|
|
|
|
|
|
|
let btcKLines = kLinesMap['BTC_USDT']
|
|
|
let totalProfit = 0
|
|
|
for (let day_count = FIRST_FEW_DAYS; day_count < FIRST_FEW_DAYS + BAKE_TEST_DAYS; day_count++) {
|
|
|
let btcKline = btcKLines[btcKLines.length - (day_count + 1)]
|
|
|
- let btcKlineDownRate = 100 * (btcKline.Close > btcKline.Open ? ((btcKline.Open - btcKline.Low) / btcKline.Open) : 0) // 计算如果是阳线时的下影线
|
|
|
+ let btcKlineDownRate = 100 * (btcKline.Open - btcKline.Low) / btcKline.Open // 可能的回撤计算
|
|
|
|
|
|
// 赚钱榜
|
|
|
// logger.info("----------------赚钱榜数据分析----------------")
|
|
|
@@ -259,8 +261,8 @@ async function main() {
|
|
|
let synProfit = NumKit.getSubFloat(expFakeProfit + expRealProfit, 2)
|
|
|
let avgProfit = NumKit.getSubFloat(synProfit / (realLength + fakeLength), 2)
|
|
|
let isStopLoss = false
|
|
|
- if (avgProfit < -0.5 || btcKlineDownRate > 0.5) {
|
|
|
- avgProfit = -0.5
|
|
|
+ if (avgProfit < -0.8 || btcKlineDownRate > 0.8) {
|
|
|
+ avgProfit = -1
|
|
|
isStopLoss = true
|
|
|
}
|
|
|
|