首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何每天只计算一次指标缓冲区mql4

在MQL4中,要实现每天只计算一次指标缓冲区,可以通过以下步骤进行操作:

  1. 创建一个全局变量来存储上一次计算指标缓冲区的时间戳。
  2. 在每次计算指标缓冲区之前,获取当前的日期和时间,并与上一次计算的时间戳进行比较。
  3. 如果当前日期与上一次计算的日期不同,说明已经过了一天,需要重新计算指标缓冲区。
  4. 在重新计算指标缓冲区之前,更新全局变量中的时间戳为当前的日期和时间。
  5. 执行指标缓冲区的计算操作。

这样,就可以确保每天只计算一次指标缓冲区。

在MQL4中,可以使用以下函数和变量来实现上述步骤:

  1. TimeCurrent() 函数:获取当前的日期和时间。
  2. 全局变量:用于存储上一次计算指标缓冲区的时间戳。

以下是一个示例代码,演示如何实现每天只计算一次指标缓冲区:

代码语言:txt
复制
// 定义全局变量
datetime lastCalculationTime;

// 在OnInit() 函数中初始化全局变量
int OnInit()
{
    lastCalculationTime = 0;
    return(INIT_SUCCEEDED);
}

// 在OnCalculate() 函数中进行指标缓冲区的计算
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
    // 获取当前的日期和时间
    datetime currentTime = TimeCurrent();

    // 检查是否已经过了一天
    if (TimeDay(currentTime) != TimeDay(lastCalculationTime))
    {
        // 更新时间戳为当前的日期和时间
        lastCalculationTime = currentTime;

        // 执行指标缓冲区的计算操作
        // ...
    }

    // 其他计算逻辑
    // ...

    return(rates_total);
}

请注意,以上示例代码仅为演示目的,实际应用中可能需要根据具体情况进行适当的修改和调整。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云计算服务:https://cloud.tencent.com/product/cvm
  • 腾讯云数据库服务:https://cloud.tencent.com/product/cdb
  • 腾讯云服务器运维服务:https://cloud.tencent.com/product/cds
  • 腾讯云人工智能服务:https://cloud.tencent.com/product/ai
  • 腾讯云物联网服务:https://cloud.tencent.com/product/iot
  • 腾讯云移动开发服务:https://cloud.tencent.com/product/mpp
  • 腾讯云存储服务:https://cloud.tencent.com/product/cos
  • 腾讯云区块链服务:https://cloud.tencent.com/product/baas
  • 腾讯云元宇宙服务:https://cloud.tencent.com/product/vr
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C语言荣获2019年度编程语言奖

一些本应在2019年突破而没有的语言:Rust上升了3名(从#33到#30),Kotlin 下降了3名(从#31到#35),Julia甚至下降了10名(从#37到#47),TypeScript上升了一名...TIOBE 编程社区索引是编程语言流行的指标。索引每月更新一次。评级基于全球技术工程师、课程和第三方供应商的数量。...谷歌、必应、雅虎、维基百科、亚马逊、YouTube和百度等热门搜索引擎都被用来计算收视率。请务必注意,TIOBE 索引不是关于最佳编程语言或编写大多数代码行的语言。...由于差异相对较小,因此列出编程语言(按字母顺序排列)。...Emacs Lisp, Erlang, Forth, Hack, Icon, Inform, Io, Korn shell, Ladder Logic, Limbo, Maple, Mercury, MQL4

59310
  • TIOBE 10 月排行榜:C++ 夺回前三,Swift 进入前十​​​​​​​

    话虽如此,但我们依然有理由相信,Go 依然是一优质的“潜力股”,且不说它一直保持上升的趋势,在日益火热的云服务领域,Go 语言基本上已是事实上的“龙头”地位。...Crystal, cT, Euphoria, Hack, Icon, Inform, Io, J, Korn shell, LiveCode, ML, Modula-2, Monkey, MOO, MQL4...历届“年度编程语言”获奖名单如下图所示,该奖项授予一年中评分最高的编程语言: TIOBE 编程社区指数(The TIOBE Programming Community index)是编程语言流行度的指标...,该榜单每月更新一次,指数基于全球技术工程师、课程和第三方供应商的数量。...包括流行的搜索引擎,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube 和百度都用于指数计算

    57330

    基于Storm的实时计算应用实践

    spout里设置了消息缓冲区,只要消息缓冲区不满,就会源源不断从消息源canal拉取数据,并把分发到多个bolt处理。 第二版:性能提升 第一版的性能瓶颈在统计结果持久化上。...但又产生了新问题,如何保证消息有且只有处理一次,为此引入了一个redis用于保存最近24小时内已成功处理的消息binlog偏移量,而storm的消息分发机制又可以保证相同消息总是能分配到一个bolt,避免线程安全问题...消息不丢失、不重复、不乱序 对于准确性要求高的场景,需要保证数据正确的消费一次。...storm的有三种消息处理模式: at most once,若不实现ack和fail方法,无论后续处理结果如何,消息只会发送一次,必定不能满足高准确性; at least once,若实现了ack和fail...可能会出现消息重复,在并发场景下重复又意味着可能出现乱序; exactly once,trident每个micro batch作为整体只成功处理一次,但也是无法保证消息真的正确的处理一次,比如数据已经处理完毕并持久化

    1.4K80

    TIOBE:2016年全球1月编程语言排行榜 Java成2015年度语言

    那么,什么是对2016年的前景如何?...TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员、 课程和第三方厂商的数量。...、Wikipedia、YouTube 以及 Baidu 等)进行计算。 该指数可以用来检查你的编程技能是否仍然是最新的或作出什么开始建立一个新的软件系统时,编程语言应采取的战略决策。...Go, Hack, Icon, IDL, Inform, INTERCAL, Io, J, J#, Julia, Korn shell, Mathematica, Mercury, Modula-2, MQL4...【说明】 TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。

    61320

    【零基础】MT4量化入门一:跑一个简单的boll

    自定义指标:比如我们在K线图上看到的MA指标、BOLL指标,在MT4你可以自己来编辑指标然后应用到K线图上,国内一般将指标编辑放在交易端,MT4把这些全部放到了MQL编辑器里了。...2、代码结构说明   从前面的图可以看到,默认有三个函数,分别是: OnInit():启动EA时触发一次的函数 OnDeinit():结束EA时触发一次的函数 OnTick():来一个行情触发一次的函数...3、简单的boll策略   代码比较简单,向上突破后做空,向下突破做多,而且做一单。...需要说明的不多: iBands是MT4自带计算boll指标的函数,其中PRICE_CLOSE代表了当前收到的最新价。 Close 中存着所有收到的收盘价,Close[0]是最新的那个。...国外一般绿色是多、红色是空(跟我们反过来)   更多的参数说明可以看用户手册,英文版的在“帮助->MQL4帮助文件”,文末附上了中文版的说明(翻译的一般,看的吃力) 四、回测   由于今天刚好不是交易日

    1.4K10

    go实现的压测工具【单台机器100w连接压测实战】

    2.3.4 访问指标解释 3.4 如何计算压测指标 3、常见的压测工具 3.1 ab 3.2 locust 3.3 Jmete 3.4 云压测 3.4.1 云压测介绍 3.4.2 阿里云 性能测试 PTS...(响应)的最少时间 平均响应时间(Average Response Time) 在一次事务中,从发出请求或指令系统做出的反映(响应)的平均时间 2.3.3 机器性能指标解释 机器性能 解释 CUP...1天内相同访客多次访问网站,计算为1个独立访客 2.4 如何计算压测指标 压测我们需要有目的性的压测,这次压测我们需要达到什么目标(如:单台机器的性能为100QPS?...网站能同时满足100W人同时在线) 可以通过以下计算方法来进行计算: 压测原则:每天80%的访问量集中在20%的时间里,这20%的时间就叫做峰值 公式: ( 总PV数80% ) / ( 每天的秒数20%...) = 峰值时间每秒钟请求数(QPS) 机器: 峰值时间每秒钟请求数(QPS) / 单台机器的QPS = 需要的机器的数量 假设:网站每天的用户数(100W),每天的用户的访问量约为3000W PV,

    9.9K105

    四十四、netflix-statistics详解,手把手教你写个超简版监控系统

    模块完成的,该模块旨在简化指标数据收集、计算的逻辑,小巧精悍,因此本文就用不长的文字学习下它,并且最后附上:基于netflix-statistics手把手写个超简版监控系统。...短小精悍,基本诠释了什么叫指标收集、计算、分位数等监控核心概念。一共也就几个类而已,如下截图: ? ---- DataCollector 数据收集,以增量方式收集新值。...比如若percents[i] = 50的话 // 就是计算buf缓冲区里中位数的值 // 90的话:计算90分位数的值(也就是该值比90%的数值都大) // computePercentile...tmp.endCollection(); publish(tmp); } // 数据如何发布/如何计算交给子类实现 protected abstract void publish(DataBuffer...默认给一个线程 默认给一个线程 protected synchronized ScheduledExecutorService getExecutor() { if (sharedExecutor

    1.2K30
    领券