[FMZ][JS]第一个回测程序--让时间轴跑起来

回测程序的第一件事:让它跑起来。因此我们需要一个死循环,一个时间,和一个执行函数。它类似于一个setInteval,只不过是通过死循环来实现的。

那么为什么不用setInteval呢?因为我们在模拟,而setInteval需要我们真正等那么久。这里的Sleep在模拟的时候会直接略过。(难道我Sleep一天,就需要等一天之后再去看下一条Log嘛?)

因此我们需要使用它封装好的接口来让时间轴动起来。

js 复制代码
let day = 0;
function main() {
    while (1) {
        OnDay();
        Sleep(1000 * 60 * 60 * 24);
    }
}

function OnDay() {
    day++;
    Log("新的一天!", day);
}

运行结果

在这里K线周期可以选1天,因为我们1天才运行一次。当我们真正需要计算的时候,这里应该设为分钟,按照分钟去获取K线,然后判断是否要买卖。

注意这里的模拟级:所有的买卖都必将成交------在这里你甚至可以调用以1元的价格买入1个比特币,再以2000元的价格卖掉这1个比特币,这些都将会成交。

但这种自欺欺人的行为是无意义的,因此你还是需要根据K线来判断自己的单是否会成交。

相关推荐
Sun_light7 分钟前
6个你必须掌握的「React Hooks」实用技巧✨
前端·javascript·react.js
爱学习的茄子9 分钟前
深度解析JavaScript中的call方法实现:从原理到手写实现的完整指南
前端·javascript·面试
百锦再10 分钟前
重新学习Vue中的按键监听和鼠标监听
javascript·vue.js·vue·计算机外设·click·up·down
优雅永不过时_v19 分钟前
基于vite适用于 vue和 react 的Three.js低代码与Ai结合编辑器
前端·javascript
WildBlue22 分钟前
🧊 HTML5 王者对象 Blob - 二进制世界的魔法沙漏
前端·javascript·html
啷咯哩咯啷26 分钟前
Vue3构建低代码表单设计器
前端·javascript·vue.js
凌览30 分钟前
斩获 27k Star,一款开源的网站统计工具
前端·javascript·后端
爱学习的小学渣32 分钟前
JS用法:Map,Set和异步函数
前端·javascript
独立开阀者_FwtCoder1 小时前
"页面白屏了?别慌!前端工程师必备的排查技巧和面试攻略"
java·前端·javascript
Hilaku1 小时前
说实话,React的开发体验,已经被Vue甩开几条街了
前端·javascript·vue.js