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

mt4编程语言 c语言,MT4编程之MQL4编程语言介绍

大家好,又见面了,我是你们的朋友全栈君。 语言介绍 MetaQuotes Language 4 (MQL4) 是一种新的内置型程序用来编写交易策略。...这种语言可以创建你自己的智能交易,使自己的交易策略能够完全自动地执行。而且,MQL4还能自定义客户指标,脚本和数据库。 内包含了大量可以分析当前及历史报价所必须的函数,以及一些基本的运算和逻辑操作。...并内置了一些基本的指标和操作命令。 MetaEditor 4集合了编写MQL4程序代码的各种语句,它能帮助使用者方便地写出规范的代码。...包含文件 包含文件常被使用的程序块源代码,这些文件能够被包含在智能交易,脚本,客户指标和数据库 的源代码中。 使用包含文件比调用资料库更灵活快捷。...语法简介 MetaQuotes Language 4(MQL4)的语法和C语言比较类似并且是一款面向过程语言。如果你C语言基础非常好很快就能上手。

6.1K20

「应用架构」应用架构行为准则

应用程序架构帮助组织规划其在应用程序解决方案和其他系统中的投资。正在评估、设计和交付的应用程序解决方案必须能够与已建立的解决方案共存。...企业级范围和角色 在概念层次上,企业架构(EA)策略和计划确保应用程序组合与其他形式的解决方案架构(业务、技术和信息)协同有效地发展。...在EA概念级的细节中,企业解决方案架构师(在其他团队成员和项目级主题专家的帮助下)正在确定可重复的标准和指南,以及可重用的资产和投资,包括与应用程序架构相关的资产和投资,它可以传递给负责项目和个人解决方案的人...在大多数组织中,我们看到这个EA角色的两个主要职责领域: 1] 采用ESA的标准化和再利用 企业解决方案架构师将可重复的标准和指南交付给适当的企业解决方案组合,然后将这些以及现在定义/部署的共享服务和资产用于单个项目解决方案工作...虽然解决方案架构师将通过创建可重用的软件和信息服务来促进重用,但相对于为项目团队正在构建、集成和/或部署的特定解决方案定义一个合理、有效和完整的设计,它的优先级较低。

75630
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MQL5从入门到精通【第二章】变量与数据类型(四)

    这些变量展示在程序的属性窗口。 输入变量由input关键字声明。放置在程序顶部,在所有程序代码和任意函数之前定义。输入变量可以是任意类型,包括枚举。但是数组和结构体不能用于输入变量。...下例是一些EA程序中的输入变量: input int MAPeriod = 10; input ENUM_MA_METHOD MAMethod = MODE_SMA; input double StopLoss...= 20; input string Comment = "ea"; 上述输入变量设置周期,移动平均线的计算方法,设置了订单的止损价和描述信息。...不过MQL4的用户可能不填习惯了,因为MQL4的局部变量,无论定义在函数的那个地方,函数体内均有效!这个不同之处,希望大家清楚。...最后的错误代码 _Period 当前表格的时间表 _RandomSeed 假随机整数生成器的当前状态 _StopFlag 停止标记程序 _Symbol 当前图表的交易品种名称

    1K20

    【Python】已解决:IndexError: index 0 is out of bounds for axis 1 with size 0

    这种错误一般出现在使用NumPy或Pandas库进行数据操作时,特别是在尝试访问一个空数组或数据框的元素时。...以下是一个可能的场景: 假设我们正在处理一个二维数组,并希望访问数组的某个元素: import numpy as np # 创建一个空的二维数组 array = np.array([[]]) # 尝试访问第一行的第一个元素...二、可能出错的原因 导致该错误的原因主要有以下几点: 空数组:在访问数组元素时,数组实际上是空的,即没有任何元素。 索引超出范围:尝试访问的索引超出了数组的维度范围。...索引超出范围:尝试访问array[0, 0]时,实际上访问了一个不存在的元素,因为该数组没有任何元素。 四、正确代码示例 为了解决上述错误,我们需要确保在访问数组元素之前,数组中确实包含所需的元素。...防止空数组操作:避免对空数组进行元素访问操作,可以在操作前添加检查条件。 索引范围验证:确保索引在数组的有效范围内,防止索引超出范围的错误。

    66010

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

    大家好,又见面了,我是你们的朋友全栈君。 一、前言   今天开始研究MT4了,MT4是大大有名的外汇交易和量化软件,使用一种叫做MQL的语言来开发量化程序(跟C比较像)。...创建成功啦,代码的目录在左侧导航器的Experts目录里,这是默认的。...分别用作止损和止盈,即在下单价的基础上,上浮和下浮50个点止损、止盈。...国外一般绿色是多、红色是空(跟我们反过来)   更多的参数说明可以看用户手册,英文版的在“帮助->MQL4帮助文件”,文末附上了中文版的说明(翻译的一般,看的吃力) 四、回测   由于今天刚好不是交易日...注意在“下单明细”中,除了我们操作的buy和sell外,还有自动执行的止盈和止损(下单时就设置了的)。 五、注意事项 1、回测的K线周期只是显示的周期,不是触发的周期。

    1.7K10

    【企业架构】企业架构:一门不为人知的艺术

    对我来说,它是跨业务和 IT 协调资源以确保 IT 资产的战略交付的纪律。 在我多年的咨询和创建系统中,企业架构是我看到几乎每个组织都重复出现的一个失败领域。为什么呢?出于多种原因。...但主要是因为大多数组织中不存在企业架构的实践。当它被实践时,它被错误地实践或定义为企业级的解决方案架构。我看到的主要错误是: 业务不是企业架构的一个元素——EA 的一个主要部分是确保交付业务价值。...墙仍然存在,我相信将企业架构围在 IT 领域会阻碍 IT 将两者结合起来的能力。 感知到的需求就在当下——要做的事情太多了,EA 只是分散了在接下来的几周或几个月内交付软件的注意力。...这是一个复杂而雄心勃勃的框架,有很多行话。TOGAF 已经过时,源于瀑布思维。在敏捷的世界中,它适合哪里?好吧,有很多东西可以带走,也有很多东西可以留下。EA 本身不应该是一个目标。...努力应该集中在为组织带来价值上,尽可能地轻量化和自动化。 如何避免这些错误并有效执行 EA?它是通过使用数据和元认知工具来塑造您分析复杂系统的方式,并结合不懈地敲响为技术执行提供指导的原则。

    26610

    压缩MySQL二进制日志(译文)

    原则上,高级别的压缩消耗更多的CPU。 这两个选项都可以在全局范围内和会话范围内动态设置。但是,不允许在事务中间更改。...在上面的输出中,它显示压缩率为59%,但对于不同类型的工作负载来说,压缩率如何? 04 — 示例 – 工作负载 为了测量压缩的效果,我运行了一系列任务,并比较了压缩或不压缩的二进制日志的大小。...为了比较,我还尝试手动压缩这些测试中未压缩的二进制日志,以查看最佳压缩效果(而不是MySQL使用的每笔事务压缩)。除了必要的设置外,测试采用默认的配置。...25 MiB至82 MiB范围内的未压缩二进制日志。...我不知道MySQL是否使用字典,如果是的话,是否使所有压缩级别的效果大致相等。 06 — 结论 新的二进制日志事务压缩效果很好,可以成为减少I/O、磁盘使用量和网络使用量的好方法,建议您考虑启用它。

    97110

    Array Index Out of Bounds: 数组越界错误解析

    在我的博客中,我主要分享技术教程、Bug解决方案、开发工具指南、前沿科技资讯、产品评测、使用体验、优点推广和横向对比评测等内容。...正文内容 一、ArrayIndexOutOfBoundsException 基本概念 ArrayIndexOutOfBoundsException 是 Java 中的一个运行时异常,当你尝试访问数组中一个超出其有效范围的索引时抛出..."); } 2.3 动态数组操作 在动态创建和操作数组时,容易出现索引错误。...A: 常见原因包括使用负数索引、访问超出数组长度的索引,以及动态操作数组时的索引错误。 Q: 如何处理动态数组操作中的索引问题?...表格总结 问题 描述 解决方案 访问负数索引 尝试使用负数作为数组索引 确保索引是非负整数,使用边界检查 索引超出数组长度 访问超出数组长度的索引 确保索引在数组有效范围内 动态数组操作中的索引问题 动态创建和操作数组时的索引错误

    20410

    【企业架构】最小可行企业架构的 5 个步骤

    领先的 CIO 正在构建“刚刚好”的企业架构,以平衡速度与长期战略洞察力,以实现更好的业务价值。...像许多 IT 领导者一样,施正试图在未使用的复杂架构研究和缺乏足够范围和深度以提供持久价值的简陋 EA 报告之间取得平衡。...他说,这使得未来与 EA 相关的对话“比企业架构师在孤岛中工作并且没有这种关系要容易得多”。 修剪繁文缛节 冗长的问卷调查和模板驱动的访谈是 EA 工作中常见但通常不受欢迎的一部分。...副首席分析师 Nolan Hart 将适当的 EA 范围称为“最少数量的可交付成果,例如观点、参考模型和设计模式,有助于确保及时、合规地交付产品和解决方案。”...他鼓励的原则包括“始终尝试创建尽可能简单的解决方案,不要过度设计,允许在整个组织中最大限度地重用,在构建新东西之前利用已建立的架构设计模式以及基于云的服务。”

    29410

    详细讲解!从秒杀聊到ZooKeeper分布式锁

    不难想象,在这种"秒杀"的场景中,实际上会出现多个用户争抢"资源"的情况,也就是多个线程同时并发,这种情况是很容易出现数据不准确,也就是超卖问题。...我尝试用原生的ZooKeeper写分布式锁,有点炸裂。...4.1 Session expired 这个错误是使用原生ZooKeeper的API出现的错误。主要是我在进入debug模式进行调试出现的。...4.3 并发查询更新出现数据不一致 这个错误真的太炸裂了~ 一开始我是把分布式锁加在service层,然后以为搞定了。接着启动8080、8081进行并发测试。...上一个事务更新库存的操作还没提交,然后下一个请求就进来查询。于是我就把加锁的范围放大一点,放在Controller层。居然成功了!

    49820

    MongoDB 游标

    MongoDB中的游标与关系型数据库中的游标在功能上大同小异。游标相当于C语言的指针,可以定位到某条记录,在MongoDB中,则是文档。...一、mongoDB游标介绍 db.collection.find()方法返回一个游标,对于文档的访问,我们需要进行游标迭代 mongoDB的游标与关系型数据库SQL中的游标类似,可以通过对游标进行...(如限制查询结果数,跳过的结果数等)设置来控制查询结果 游标会消耗内存和相关系统资源,游标使用完后应尽快释放资源 在mongo shell中,如果返回的游标结果集未指定给某个var定义的变量...,则,游标自动迭代20次,即输出前20个文档,超出20的情形则需要输入it来翻页 本文内容描述手动方式来实现游标迭代来访问文档或者是用索引迭代 声明游标 var...ename" : "usr29" } //上述查询中通过var myCursor进行变量的定义,相当于SQL中的declare cursor cur_name is select ..

    83920

    水波模拟算法

    三、设计方案 用两个数组来模拟水池。数组大小:水池高度 * 水池宽度。其中一个数组存储水池的上一个状态,另一个用来存储当前用上一个状态正在计算的下一个状态。...四、数学推理与算法设计 根据以上设计,就可以建立模型进行数学推理和算法设计。 ? 上述两个矩形代表了两个数组,即两个水池状态。...所以得到需要的数学公式:x0’ = (x1 + x2 + … + y4) / 4 – 2 * x0 但是实际上这组解不准确,测试中也出现了问题。...假设,圆心为A,距离为d的B点(d 的能量为: Eb = Ea – Ea * (R – d) / R = Ea * (1 – d / R) 上面这个简单的近似公式经过测试,能逼真的模拟波源。...g = g + E0 b = b + E0 如果超出0—255的范围,则进行修正。

    1.3K90

    Java中常见的异常类型

    java.lang中定义的未检查异常 异常 含义 ArithmeticException 算术错误,如除以零。 ArrayIndexOutOfBoundsException 数组索引超出边界。...ArrayIndexOutOfBoundsException 数组索引超出边界。 ArrayStoreException 分配给不兼容类型的数组元素。...InstantiationException 尝试创建抽象类或接口的对象。 InterruptedException 一个线程已被另一个线程中断。...java.lang.IncompatibleClassChangeError 不兼容的类变化错误。当正在执行的方法所依赖的类定义发生了不兼容的改变时,抛出该异常。...当调用Thread类的stop方法时抛出该错误,用于指示线程结束。 java.lang.UnknownError 未知错误。用于指示Java虚拟机发生了未知严重错误的情况。

    2.3K40

    【企业架构】EA 比以往任何时候都更重要的五个领域

    Forrester Research 已确定其客户使用的 20 多种企业架构角色。他们的范围从定义业务和运营模型的组织架构师到项目、平台和数字架构师。...弹性和适应性 随着从 COVID 关闭到经济制裁破坏运营和供应链的一切,企业正在转向 EA 的洞察力,以更快、更有效地预测和响应问题。...他的一些客户将企业架构师与产品、分析和供应链专家聚集在一起,询问“我是否仍然可以在没有 100% 的物料清单的情况下安全地销售该产品?...如果答案是肯定的,那么当我的系统设计为与产品规格零偏差时,我该怎么做呢?”他说。他说,这可能需要对 ERP 系统进行分析,以了解引用物料清单的所有依赖项和功能。...EA 还帮助 Wells Fargo 集成面向客户的和后台应用程序,以跨渠道(如面对面、Web、电话和移动应用程序)创建更一致的体验。

    53110

    四种绕过iOS SSL验证和证书固定的方法

    本文我将为大家介绍以下四种,绕过iOS中的SSL验证和证书固定的方法: 1. 安装自己的 CA 证书 2. 将软件安装到 iOS 设备 3. 使用 Objection 和 Frida 4....方法 2:将软件安装到 iOS 设备 如果仍出现SSL errors,或应用程序本身因为等待连接而发生卡死现象,则应用程序服务器可能正在使用某种TLS链验证或SSL证书固定。...首先,我们需要Apple Developer帐户的有效配置文件和代码签名证书。你可以通过在Xcode中创建测试应用程序来创建有效的配置文件,并在这里注册免费的开发人员帐户。...对iOS的反汇编内容已超出了本文的讨论范围。对于iOS而言,最常用的反汇编程序是Hopper和IDA。...本文中介绍的方法,都是我们在评估期间常用到的方法,用于在出现SSL证书错误和固定时查看和操纵流量。如果你对文中所提及的内容有任何的疑问,或是你有更好的方法。那么,欢迎你在下面的评论中告诉我!

    5.1K40

    「业务架构」EA874:业务架构的最佳实践

    开发业务架构 EA过程模型可以表示为一系列七个步骤,在支持任何架构(architecture)观点的过程中都可以遵循这些步骤,以及进行中的管理、治理和通信工作。...图1 构建业务架构是一个迭代过程,在开发EBA时,相同的EA过程也可以应用。 1] 定义和范围 为了开始使用EBA,EA团队应该: 建立一个明确的EBA定义,包括EBA工作的总体目标。...为这个特定的迭代创建一个范围声明,以及一个超出范围的声明。 制定一份相关假设的声明(如业务主题专家[SME]的可用性)。 确定每个迭代的总体业务发起人和业务发起人。...未来的第一个状态任务是定义EBA更改的上下文,了解业务上下文如何应用于EBA迭代 4] 当前状态 这个过程的第四步是建立当前状态的基线。目标是了解EA和EBA工作范围内当前业务维度的状态。...图2 创建有效运营模式的五大核心要素 五个要素对于定义运营模式至关重要: 领导 治理 组织模式 能力 服务 关注这些要素的清晰性和一致性的业务架构师将支持公司战略的成功。 ?

    51540

    负载恶意软件HawkEye的VB Inject样本分析

    于是我在0x4A07D6、0x4A0BC8下断。FormLoad中没有什么有用的信息,直接断到FormPaint。 ? 这里做了一些字符串的操作,直接自动步过,然后来到下面这个call: ?...这里call edx之后,跳到错误地址,该地址正确编码后的指令是: ? 地址为0x48EA92,但程序却跳到了0x48EA93: ?...0x04 运行时解密 从过了反调试的地址0x48EA92开始: ? 干扰指令很多,还有一部分硬编码。一直单步,遇到call都最好跟进,这段代码中的call不多: ?...其实不太清楚偏移0x68是什么,就查了一下: PEB有一个名为NtGlobalFlag(偏移量为0x68)的字段,程序可以挑战识别它们是否正在被调试。...这些功能都是通过解密出来的PE实现的。样本的VB代码只相当于一个外壳,运行时解密、创建子进程、注入进程等。

    1.1K10

    MT4-EA自动化交易研究笔记(2022-04-23)

    ,原因还是对自己的交易系统不够自信,怕出现大行情大亏而根据自己的经验只跟了部分信号,有些信号开单前我把自动EA给关闭了,事后证明那些信号都是对的。...,不过这个浮亏数是在我预期范围内,还可以接受,这让我对这个系统更自信了,打算下周实盘也全程开着,不再手工干预看看效果。...当然,是否还有比昨天更大的单边行情,EA在出现更大行情的情况下的表现会怎么样有待时间验证。...这个功能已经在谋划中,本地跟单的方式有尝试过,效果不是很好,有一定的延迟,跟直接挂EA开单没多大区别 最近试了下EA可以通过socket跟java通信,考虑做一个云跟单的app,与EA端配合,这样不但解决了跟单问题...,那次以后我对加仓进一步做了优化,每天的浮亏大幅下降,挂到现在最大的浮亏在500美金左右,已经在我可接受的范围,是否能经得住市场的大风大浪还有待继续验证,以后我会每天更新收益状况,与大家共同见证。

    58170

    GTID,你了解多少?

    如果是采用的Xtrabackup的备份方式,主库gtid_purged信息会保存在xtrabackup_info和xtrabackup_binlog_info中。...执行完后需要监控错误日志是否有告警,如果有告警就需要调整应用程序,事其只使用gtid兼容的特性。这一步非常重要,进入下一步前必须保证错误日志中没有任何警告。...如果同一个事务中包含了事务引擎(InnoDB)和非事务引(MyIsam),会导致多个GTID分配给同一个事务。当主从数据库的同一张表采用不同的存储引擎时也会出现在类似情况。...在GTID模式下,autocommit=1时可以创建临时表。 不支持sql_slave_skip_counter跳过错误。 GTID模式下不建议进行mysql_upgrade。...中可以看出出错事务的GTID是:7e6667ab-903a-11ea-ae4a-000c29d7c488:1023。

    2.2K30
    领券