最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

股票量化軟件:在赫茲量化中測(cè)試移動(dòng)平均線計(jì)算的性能

2023-07-26 15:32 作者:大牛啊呢  | 我要投稿

測(cè)試條件

計(jì)算速度取決于很多因素。因此,本研究作為結(jié)果獲得的數(shù)據(jù)在其他測(cè)試條件下可能有所不同。換言之,性能的絕對(duì)值將有所不同,但是相對(duì)值將是類似的(針對(duì)某個(gè)平臺(tái))。

因此 MQL5 中的 iMA 函數(shù)本身不返回計(jì)算結(jié)果(它返回指標(biāo)的句柄),我們將測(cè)試兩個(gè)函數(shù)的速度:iMACopyBuffer。

測(cè)試條件:

  • CPU:Core i7 965

  • 交易品種:"EURUSD"

  • 價(jià)格數(shù)據(jù)大小:10000 個(gè)元素

  • 客戶端:自主交易,圖表中的最大柱數(shù)設(shè)置為 10000

  • 移動(dòng)平均線模型:MODE_SMA、MODE_EMA、MODE_SMMA、MODE_LWMA

  • 計(jì)算速度的精確度限制為兩位有效數(shù)字

  • 移動(dòng)平均線函數(shù)的可能調(diào)用數(shù)量:7

2. 如何測(cè)試

要測(cè)量移動(dòng)平均線的計(jì)算時(shí)間,我們使用 GetTickCount() 函數(shù),該函數(shù)運(yùn)行于毫秒級(jí)別。此精確度還不足夠,因此我們需要組織某些循環(huán)以提高測(cè)量的質(zhì)量。

但是,如果我們用相同的計(jì)算和相同的輸入數(shù)據(jù)多次重復(fù)循環(huán),則結(jié)果會(huì)失真。該事實(shí)的原因如下:iMA 函數(shù)在客戶端的全局緩存中創(chuàng)建相應(yīng)技術(shù)指標(biāo)的一個(gè)副本。如果在全局緩存中已經(jīng)存在一個(gè)指標(biāo)的副本(具有相同的參數(shù)),則不創(chuàng)建新的副本,指標(biāo)副本的引用計(jì)數(shù)器增大。

換言之,整個(gè)緩存指標(biāo)僅在第一次調(diào)用時(shí)計(jì)算一次,所有后續(xù)的調(diào)用僅采用已經(jīng)存在的值,它僅重新計(jì)算新的數(shù)據(jù)。

因此,應(yīng)按這樣的方式組織循環(huán):指標(biāo)的輸入?yún)?shù)在循環(huán)期間是唯一的。我們已經(jīng)選擇了三個(gè)這樣的參數(shù):平均周期、時(shí)間框架和應(yīng)用的價(jià)格。

參數(shù)

值范圍

平均周期

從 1 至 100

時(shí)間框架

М1、М5、М15、М30

應(yīng)用的價(jià)格

PRICE_CLOSE、PRICE_OPEN、PRICE_HIGH、PRICE_LOW、PRICE_MEDIAN、PRICE_TYPICAL、PRICE_WEIGHTED

表 1. 輸入?yún)?shù)的范圍

我們將使用七種不同的調(diào)用方法計(jì)算含有 10000 個(gè)元素的數(shù)組的移動(dòng)平均值(詳情見第 4 節(jié))。


3. 研究結(jié)果

我們已經(jīng)將所有結(jié)果組合在表 1 中,使用以秒為單位的計(jì)算時(shí)間來(lái)評(píng)估計(jì)算性能(見表 1)。程序計(jì)算了 100х4х7=2800 類移動(dòng)平均線,并且我們確定含有 10000 個(gè)元素的價(jià)格數(shù)組的計(jì)算時(shí)間。單次循環(huán)的計(jì)算時(shí)間約等于總時(shí)間除以 2800。例如,對(duì)于案例 1 和 SMA 模式,它約等于 0.0028/2800。

模式

MODE_SMA

MODE_EMA

MODE_SMMA

MODE_LWMA

平臺(tái)

0 ?(見第 4.1 節(jié))

0,0041

0,0040

0,0043

0,0041

MetaTrader 4

1 ?(見第 4.2 節(jié))

0,0028

0,00023

0,00027

0,0045

MetaTrader 5

2 ?(見第 4.3 節(jié))

0,0029

0,0029

0,0029

0,0029

MetaTrader 5

3 ?(見第 4.4 節(jié))

0,0998

0,0997

0,0998

0,0998

MetaTrader 5

4 ?(見第 4.5 節(jié))

0,0996

0,0996

0,0996

0,0996

MetaTrader 5

5 ?(見第 4.6 節(jié))

0,0030

0,0029

0,0029

0,0029

MetaTrader 5

6 ?(見第 4.7 節(jié))

0,000140

0,000121

0,000117

0,0035

MetaTrader 5

表 2. 結(jié)果

將在下文討論測(cè)試案例的意義(第 4.1-4.7 節(jié))。讓我們?cè)u(píng)估移動(dòng)平均線計(jì)算性能的整個(gè)畫面。

為方便起見,在圖表中表示結(jié)果(見圖 1-5)。移動(dòng)平均線的調(diào)用類型在 X 軸上表示(見表 2),用對(duì)數(shù)刻度 -1 表示 Y 軸的值,因此,值越大,性能越快。每個(gè)計(jì)算模型(SMA、EMA、SMMA、LWMA)對(duì)應(yīng)于圖表中的一根柱。


編輯切換為居中


圖 1. 不同移動(dòng)平均線算法的性能測(cè)試結(jié)果

可以看到在不同的移動(dòng)平均線計(jì)算案例中計(jì)算速度出現(xiàn)顯著差異。這意味著什么?由 MQL5 開發(fā)人員提供的幾種移動(dòng)平均線算法具有不同的計(jì)算性能:有很快的算法(案例 6)和較慢的算法(案例 3 和 4)。因此,在用 MQL5 編寫使用移動(dòng)平均線的程序時(shí),必須選擇正確的算法。

在以下的圖中詳細(xì)說(shuō)明了各個(gè)移動(dòng)平均線模型 (0-6) 的計(jì)算時(shí)間,見表 2。

圖 2. MODE_SMA 模式的移動(dòng)平均線計(jì)算性能

圖 3. MODE_EMA 模式的移動(dòng)平均線計(jì)算性能


編輯


圖 4. MODE_SMMA 模式的移動(dòng)平均線計(jì)算性能


編輯


圖 5. MODE_LWMA 模式的移動(dòng)平均線計(jì)算性能

比較兩個(gè)平臺(tái)的計(jì)算性能非常有趣:赫茲量化。表 2 中的案例 0 (MQL4) 和案例 1 (MQL5) 顯示了結(jié)果。

為方便起見,讓我們將 iMA 標(biāo)準(zhǔn)指標(biāo)的計(jì)算結(jié)果組合到單獨(dú)的圖和表中(見圖 6)。測(cè)試的計(jì)算時(shí)間以 Y 軸表示。


股票量化軟件:在赫茲量化中測(cè)試移動(dòng)平均線計(jì)算的性能的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
饶阳县| 来安县| 新河县| 邹平县| 颍上县| 大洼县| 深泽县| 特克斯县| 奉贤区| 新绛县| 广西| 多伦县| 堆龙德庆县| 永和县| 区。| 图木舒克市| 米泉市| 义乌市| 广西| 大连市| 镇雄县| 庆城县| 湟源县| 福海县| 南木林县| 砚山县| 晋宁县| 梓潼县| 兴业县| 清丰县| 阜南县| 大洼县| 北安市| 揭阳市| 漳平市| 绥江县| 姚安县| 民县| 海丰县| 安溪县| 会同县|