技术指标

如何使用Spread Logger记录与分析MetaTrader 4的点差数据
MetaTrader4
如何使用Spread Logger记录与分析MetaTrader 4的点差数据

你是否曾怀疑过经纪商给你的点差报价是否准确? 有没有想过从其他来源验证点差数据统计,或者创建自己的数据? 描述: Spread Logger由两个指标组成: Spread Logger Write - 实时创建包含点差数据的CSV文件。 Spread Logger Read - 读取创建的CSV文件,显示一些统计信息,并将收集到的数据绘制到图表上。同时,也会将实时点差数据绘制到图表上。 使用说明: 将两个文件保存在 terminal\experts\indicators 文件夹中。 Spread Logger Write: 将 Spread Logger Write 附加到任意图表上。(插入 > 指标 > 自定义 > Spread Logger Write) 在输入选项卡下给你的文件命名,或者保留默认文件名。 保持MT4终端运行并保持图表打开,Spread Logger将实时收集数据。 注意:为了获得最准确的数据,请将 Spread Logger Write 附加到1分钟图表。 注意:所有由Spread Logger Write创建的文件都保存在 terminal\experts\files 文件夹中。 Spread Logger Read: 打开你已经记录数据的货币对图表,并将 Spread Logger Read 附加到该图表上。如果你使用了自定义文件名,请确保正确输入文件名。 注意:虽然你可以将 Spread Logger Read 附加到任何时间框的图表上,但使用与你收集数据的时间框相同的图表将会获得最佳的视觉效果。 Spread Logger Read 将显示以下统计信息: 测试时间与测试的柱数 平均点差 众数及其频率百分比 如果收集数据的时间间隔在当前显示的图表范围内,你将看到收集的点差数据绘制到图表上。实时点差数据也会在附加 Spread Logger Read 到图表时显示。 请分享你的数据和结果。 祝你记录愉快! :)

2011.01.31
MetaTrader 5中的“新条”事件处理器:如何优化指标
MetaTrader5
MetaTrader 5中的“新条”事件处理器:如何优化指标

在交易中,掌握一些实用的工具和技巧至关重要。今天,我们来聊聊在MetaTrader 5中使用的“新条”事件处理器。这个方法可以帮助我们在每次出现新条时重新计算指标,避免在每个报价更新时都进行计算,从而提高效率。 以下是一个简单的指标示例,当新条出现时,它会打印一条信息: //+------------------------------------------------------------------+ //|                                            OnNewBarCalculate.mq5 | //|                                            Copyright 2010, Lizar | //|                                                    Lizar@mail.ru | //+------------------------------------------------------------------+ #property copyright "Copyright 2010, Lizar" #property link      "Lizar@mail.ru" #property version   "1.00" #property indicator_chart_window #include <OnNewBarCalculate.mqh> // 这里是调用 OnNewBarCalculate() 函数的秘密//+------------------------------------------------------------------+ //| 指标的新条事件处理器      | //+------------------------------------------------------------------+ int OnNewBarCalculate(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[]) {    //--- 在这里你可以编写类似 OnCalculate() 的代码;    //--- 但是这个函数只会在新条出现时被调用(而不是在每个报价更新时)    PrintFormat("新条: %s",TimeToString(TimeCurrent(),TIME_SECONDS));    //--- 返回下一个调用的 prev_calculated 值    return(rates_total); }  }

2011.01.21
专业ZigZag指标 - 提升你的MetaTrader 5交易策略
MetaTrader5
专业ZigZag指标 - 提升你的MetaTrader 5交易策略

注意!这版ZigZag指标基于 ZigZag代码,经作者PPC授权发布。我已测试该版本并修复了算法中的错误。 该代码是MetaTrader 5的MQL5版 Zigzag指标。 注意!AlexSTAL_OutsideBar.mqh库应位于  ..\MQL5\Include文件夹内的MetaTrader 5客户端终端。 这就是答案吗? 我认为ZigZag就像是对价格图表的压缩。ZigZag可以使用K线的收盘价(例如Close价格)或高低价格来计算(最常用的方法)。 在使用MetaQuotes提供的标准ZigZag时,我发现了一些错误。主要问题是标准ZigZag无法处理外部K线。 2007年,Rashid Umarov (Rosh)发布了带有外部K线处理的Zigzag2 R代码(采用DRAW_ZIGZAG风格而非DRAW_SECTION)。 让我们定义“正确”ZigZag实现的特征: 高点和低点必须严格交替; 当前高点必须高于(或等于)右侧所有K线,直到下一个(相反的)低点; 当前低点必须低于(或等于)左侧所有K线,直到下一个(相反的)高点。 让我们以示例(EURUSD,H1,2006年12月8日至13日)进行说明。这里有两个外部K线的案例。典型的ZigZag无法构建“正确”的图像。 图1. 典型ZigZag,输入参数[12;5;3]和[12;0;0] 图2. Zigzag2 R,输入参数[12;5;3] 图3. Zigzag2 R,输入参数[12;0;0] 乍一看,图3的构建是正确的,但这里有一些特征: 在这种情况下,构建是正确的,因为输入参数的缘故,但一般情况下算法必须适用于任何参数。 左侧的外部K线不正确,因为K线的高低形成顺序: ZigZag段必须以这种方式构建。 我测试了许多ZigZag算法: ZigZag MT3, ZigZag, Zigzag R, Zigzag2 R, ZigZag_NK, ZigZag_ZUP89_nen, ZigZag_new_nen4, CZigZag, Swing_ZZ_1, DT_ZZ_nen, ZigZag_Talex, Reverse_ZZ, Points_ZZ_1, i_MF_Fractal_ZZ_3in1, ang_Amp_ZZ, ZigzagFr_v1, NonLagZigZag_v2, ZZ_FF_v3, ZigZag Ensign, ZigZag tauber, SQZZ Товаровед, ZZ_2L_nen wellx, Channel ZZ, Azzx_larryzz_3_0, RPoint, RPoint-m v2, ZigZagTF。但没有一个能正确解决这个问题。 以下是该指标的图示: 图4. 专业ZigZag,输入参数[12;0] 图5. 专业ZigZag,输入参数[23;0] 此版本的一些特征: 单次计算算法 仅重绘最后一段(该段无法取消,除非历史更新) 具有优化算法,用于K线内部的计算(在价格变化低于MinMotion输入参数定义的阈值时,不会进行tick重算) 提供两种高低形成顺序的算法:使用K线类型(快速但不精确)和使用来自低时间框架的数据(需要历史数据,需检查其存在性和正确性,或修改OutsideBar库) ProExtra版本未发布,因为未检查MetaTrader 5报价的准确性。以下是ZigZag构建不正确的额外示例: 图6. EURUSD,H1,11月29日至12月7日(红线:ZigZag,输入参数[7;0;0];蓝线:Zigzag2 R,输入参数[7;0;0]) 图7. EURUSD,H1,2010年11月29日至12月7日。ZigZag段的正确构建。 总结 遗憾的是,这个版本并不完美,但我正在努力改进。 由于通道算法(iHighest/iLowest),有时会跳过高点。 请告诉我关于该指标的错误和特性。

2011.01.19
Orlov的ZigZag指标 - MetaTrader 4最佳选择
MetaTrader4
Orlov的ZigZag指标 - MetaTrader 4最佳选择

简要介绍: 在交易中,ZigZag指标是一个非常实用的工具,但市面上有很多复杂的ZigZag版本,往往让人摸不着头脑,导致无法达到预期效果。因此,我决定设计一个简单明了的ZigZag指标,并以我的名字命名它。 这个ZigZag指标具备清晰的工作原理,能够有效展示市场中的冲击和修正。最重要的是,它不会重新绘制,只会描绘已经存在的冲击。 选项和工作原理: extern double MinRatio=0.33; 这个参数表示新冲击与之前冲击的比例关系。只有当前的冲击不小于前一个冲击的33%时,ZigZag才会绘制新线。 0.5 - 意味着不小于一半 0.75 - 意味着不小于三分之二等等 extern int MinPoints=20; 这个过滤器用于剔除过小的市场波动,即市场噪声。它设定了ZigZag反应的最小冲击大小(以点数为单位)。如果冲击小于MinPoints,ZigZag将不会做出反应。 extern int ForcePoints=50; 这个参数允许即使在小于MinRatio的情况下也能对显著的回撤做出反应,尤其是在剧烈波动之后。 如果MinPoints参数设置得大于ForcePoints,ForcePoints将自动提升到相同的值。 extern bool ByClose=False; 这个参数非常有趣,它允许ZigZag根据收盘价进行绘制,而忽略高低点的市场噪声。 extern int History=5000; 这只是历史数据的设定。) 总之,Orlov的ZigZag指标是一个简单而有效的工具,适合希望利用冲击和修正的交易者。希望这个指标能帮助你在交易中获得更好的结果!

2011.01.13
使用 MACD 和 Ichimoku 指标提升交易策略
MetaTrader4
使用 MACD 和 Ichimoku 指标提升交易策略

在众多交易指标中,MACD 无疑是一个稳定且广泛应用的工具,围绕它衍生了很多交易策略。 为了更好地结合市场情绪,我决定将 Ichimoku 的概念应用到 MACD 的数值上。 如果你想深入了解如何使用 Ichimoku,我建议你访问 Ichimoku Wiki,这样你可以全面理解这个指标的使用方法。 在附图中,我标注了一些基本的价格运动,以帮助你理解如何解读这些信息。 这个指标使用了我常用的自动阴影代码,因此你需要允许 DLL 的使用,并等待新的报价出现,或者在静态图表上右击编辑后不改变任何内容,再关闭图表,以便让云彩浮动。 由于 MACD 涉及正负值,我受到缓存数量的限制,无法实现所有可能的阴影效果。这意味着你将始终看到 SenkouA 和 B 线(Kumo 云的边界),而在零线交叉时,偶尔会出现少量阴影。这点无需过于担心,但提及一下是有必要的。 对我来说,这是一种全新的确认 MACD 的方式,我对整体呈现的信息非常满意。虽然 Ichimoku 需要一定的学习曲线,但绝对值得投入时间。我相信这个指标也会类似,虽然一开始会有些让人畏惧,但经过练习后非常值得。 起初,我只是用 M5 和 M15 的策略测试器运行一个简单的 EA,观察指标的表现。经过一段时间,你会惊讶于它能够讲述的故事。 我几乎完成了 Stochastic 和 CCI 的 Ichimoku 指标,并在我的网站上发布了 ADX_Ichimoku 的相关内容。 祝好! Brooky

2011.01.10
首页 上一页 328 329 330 331 332 333 334 335 336 337 338 下一页 末页