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

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

股票量化交易軟件:連續(xù)前行優(yōu)化4優(yōu)化管理器(自動(dòng)優(yōu)化器)

2023-07-10 13:46 作者:bili_45793681098  | 我要投稿

自動(dòng)優(yōu)化器操作說明


為繼續(xù)分析所創(chuàng)建程序,赫茲股票量化首先需要定義該項(xiàng)目的初衷。 我們決定在交易中運(yùn)用科學(xué)的方法,并著手創(chuàng)建清晰的程序化交易算法(無論我們與何種類型的機(jī)器人打交道,基于指標(biāo)亦或是應(yīng)用模糊邏輯和神經(jīng)網(wǎng)絡(luò) — 所有這些都是執(zhí)行特定任務(wù)的編程算法)。 因此,選擇優(yōu)化結(jié)果的方式也應(yīng)形式化。 換言之,如果在交易過程中拒絕采用隨機(jī)性,那么準(zhǔn)備交易的過程也應(yīng)該是自動(dòng)化的。 否則,赫茲股票量化可以隨機(jī)地選擇自己喜歡的結(jié)果,這比系統(tǒng)交易更接近直覺。 這一思路是鼓勵(lì)我創(chuàng)建此應(yīng)用程序的第一個(gè)動(dòng)機(jī)。 下一個(gè)則是能夠利用優(yōu)化來測試算法 — 運(yùn)用下圖所示的連續(xù)前行優(yōu)化。 ?


編輯切換為居中

連續(xù)前行優(yōu)化在給定的時(shí)間區(qū)間內(nèi),輪流在歷史(黃色)和前向驗(yàn)證(綠色)優(yōu)化過程之間交替。 假設(shè)您擁有 10 年的歷史數(shù)據(jù)。 赫茲股票量化確定優(yōu)化區(qū)間應(yīng)等于 1 年的間隔,而前向驗(yàn)證間隔則由 1 個(gè)季度(或 3 個(gè)月)組成。 作為結(jié)果,我們的間隔時(shí)間等于 1.25 年(1 年+ 1 個(gè)季度),這包含了一個(gè)優(yōu)化通關(guān)測試 + 一個(gè)前向驗(yàn)證測試。 在圖例中,每行代表該時(shí)間間隔。

接下來,我們重復(fù)相同類型的過程:


  1. 在選定的歷史周期(1 年)內(nèi)進(jìn)行優(yōu)化。

  2. 在優(yōu)化間隔的結(jié)果中選擇最佳參數(shù),利用固定方法。

  3. 移到前向驗(yàn)證時(shí)間段,并運(yùn)行測試,然后返回到第一步 — 現(xiàn)在是處于偏移的時(shí)間段上。 重復(fù)該過程,直至達(dá)到當(dāng)前時(shí)間段。

  4. 收集到每一季度的測試結(jié)果后,我們對算法的可行性進(jìn)行了最終評估。

  5. 可以啟用最后一個(gè)優(yōu)化通關(guān)測試(未經(jīng)前向驗(yàn)證測試)進(jìn)行交易。

由此,赫茲股票量化得到了一種方法,可通過優(yōu)化來測試算法的可持續(xù)性。 不過,在這種情況下,我們必須在每次前向驗(yàn)證周期失效后重新優(yōu)化算法。 換言之,我們?yōu)樗惴ㄖ匦聝?yōu)化設(shè)置了某段時(shí)間間隔,固化了選擇參數(shù)的方法,并首先在歷史記錄上執(zhí)行此過程,后期每當(dāng)前向驗(yàn)證測試周期失效時(shí),便要重復(fù)一次。


第一點(diǎn),這種優(yōu)化技術(shù)令赫茲股票量化擁有清晰定義的優(yōu)化邏輯,從而令我們可以擺脫人工干預(yù),得到滿意的結(jié)果。

第二點(diǎn),運(yùn)用類似技術(shù)對新資產(chǎn)或新算法執(zhí)行優(yōu)化,赫茲股票量化可以得到該算法的壓力測試的全貌。 當(dāng)參數(shù)選擇方法和優(yōu)化參數(shù)在所有前向驗(yàn)證優(yōu)化中都得以固定不變時(shí),我們應(yīng)進(jìn)行連續(xù)的壓力測試,從而提示我們市場是否不再適合我們的策略。

第三點(diǎn),我們在相當(dāng)短的時(shí)間內(nèi)得到了很多優(yōu)化片段,這提高了所執(zhí)行測試的可靠性。 例如,將上述劃分為 1 年優(yōu)化和 1 個(gè)季度前向驗(yàn)證,那么 2 年間隔能提供 4 次壓力測試和 1 個(gè)最終優(yōu)化。


優(yōu)化啟動(dòng)設(shè)置

現(xiàn)在赫茲股票量化已經(jīng)討論了應(yīng)用程序執(zhí)行的過程,我們來研究一下它的用法。 該系列文章,是我先前有關(guān)優(yōu)化過程管理圖形界面文章的邏輯延續(xù):


  1. 優(yōu)化管理(第一部分)

  2. 優(yōu)化管理(第二部分)


文章介紹了如何在終端中以受控過程運(yùn)行優(yōu)化或測試。 本系列中采用相同的方法。 不過,基本區(qū)別之一是控制過程不是作為終端的附加實(shí)現(xiàn)的,而是作為獨(dú)立程序?qū)崿F(xiàn)的。 這種方法可供計(jì)算機(jī)上安裝的所有終端使用。 在先前的系列文章中,赫茲股票量化創(chuàng)建了一個(gè)擴(kuò)展,可以從工作終端啟動(dòng)。 該擴(kuò)展程序可供計(jì)算機(jī)上啟動(dòng)的所有終端設(shè)備使用。 當(dāng)前應(yīng)用程序還可以訪問計(jì)算機(jī)上安裝的所有終端,但是每次只能操控一個(gè)終端,且它可以啟動(dòng)任何所需的終端。

為確保自動(dòng)優(yōu)化器成功運(yùn)行,請確保在啟動(dòng)應(yīng)用程序之前關(guān)閉選定的終端。

該應(yīng)用程序的運(yùn)行方式如下:


  1. 在下一次啟動(dòng)過程中,無論是優(yōu)化還是測試,應(yīng)用程序都會(huì)啟動(dòng)終端,并將整個(gè)測試過程委托給終端。 測試或優(yōu)化完成后,終端將關(guān)閉。

  2. 經(jīng)過測試或優(yōu)化后,機(jī)器人會(huì)生成包含優(yōu)化結(jié)果的報(bào)告(有關(guān)更多詳細(xì)信息,請閱讀本系列中的先前文章)。

  3. 自動(dòng)優(yōu)化器知道報(bào)告放在何處,因此它可以讀取和處理報(bào)告。 一旦處理完成后,要么啟動(dòng)新的優(yōu)化和測試階段,亦或完成優(yōu)化并將結(jié)果顯示在“結(jié)果”選項(xiàng)卡中。


稍后將研究優(yōu)化機(jī)制的實(shí)現(xiàn),而本章節(jié)之目的是以最少的技術(shù)細(xì)節(jié)來講述程序操作過程。 不要忘記,您可將自己的算法添加到負(fù)責(zé)優(yōu)化的代碼部分當(dāng)中。 自動(dòng)優(yōu)化器是啟動(dòng)優(yōu)化過程的控制程序,但這些過程的邏輯可能不同。 此處是完結(jié)版應(yīng)用程序得主選項(xiàng)卡屏幕截圖。


編輯切換為居中

如果您細(xì)看屏幕截圖,位于綠色區(qū)域的第一個(gè)名為 “Select Optimiser” 的組合框,可提供程序中已實(shí)現(xiàn)的優(yōu)化類型的選擇。

應(yīng)用程序圖形界面切分為 2 個(gè)主欄。 主欄之一是設(shè)置(Settings)。 當(dāng)赫茲股票量化需要啟動(dòng)或停止優(yōu)化時(shí),會(huì)于此處開始操作。 該欄在第二部分中有過詳細(xì)講述。 另一個(gè)板面 “Result” 則是顯示優(yōu)化結(jié)果的位置。

首先,在啟動(dòng)自動(dòng)優(yōu)化器時(shí),赫茲股票量化需要選擇要使用的終端。 終端選擇原理與先前啟動(dòng)優(yōu)化的圖形界面相同。 換言之,自動(dòng)優(yōu)化器將找到此計(jì)算機(jī)上安裝的所有終端(只有那些采用標(biāo)準(zhǔn)安裝過程的終端,直接復(fù)制/導(dǎo)入的不在此列)。

“設(shè)置(Settings)”欄分為 4 個(gè)部分。 每個(gè)屏幕部分的邊框都可以拖拽。 當(dāng)算法有很多輸入?yún)?shù)時(shí),這尤其方便。


  • 屏幕的第一部分提供了來自 MetaTrader 優(yōu)化器的參數(shù)列表。 每次更改所選終端時(shí),都會(huì)更新其下“智能交易系統(tǒng)”的列表。 該列表包含位于所選終端相應(yīng)目錄下的所有智能交易系統(tǒng)。 指定 EA 時(shí)要考慮嵌套目錄。

  • 屏幕的第二部分包含所選算法的參數(shù)列表。 參數(shù)列表是在相應(yīng)的 “MQL5/Profiles/Tester/{Expertname}.set” 文件里找到的。 如果所選 EA 沒有對應(yīng)的文件,則在第一個(gè)屏幕區(qū)域中選擇 EA 之后,先要啟動(dòng)該終端的測試器。 然后,采用默認(rèn)設(shè)置為請求文件創(chuàng)建設(shè)置。 之后,關(guān)閉終端。 每次從 “Available experts” 列表中選擇其它智能交易系統(tǒng)時(shí),該列表都會(huì)變化。 若您希望刷新已加載的參數(shù)列表,只需單擊 “Update (*.set) file”,之后系統(tǒng)啟動(dòng)終端,更新列表,再關(guān)閉它。 在此之前,將刪除現(xiàn)有文件,并在同一目錄下創(chuàng)建一個(gè)新文件。

  • 屏幕的第三板面包含非常重要的參數(shù):未加載數(shù)據(jù)數(shù)組的過濾和排序條件列表。 本系列的第一篇文章里詳細(xì)討論了排序過程。 如第一篇文章中所述,可以使用 “>=”,“<=”,“<||>” 等來指定過濾條件。

  • 屏幕的第四個(gè)板面包含一系列前向驗(yàn)證和歷史時(shí)段通關(guān)優(yōu)化。 間隔的邏輯如上所述。 在此輪的第一篇文章中,已涵蓋了通關(guān)優(yōu)化之間的排序和交互的實(shí)現(xiàn)。 請注意,在啟動(dòng)測試而非優(yōu)化時(shí)(參數(shù) Optimisation model = Disabled),該字段應(yīng)含有一個(gè)歷史時(shí)間間隔,或兩個(gè)間隔(歷史和前向)。 鑒于每次啟動(dòng)自動(dòng)優(yōu)化器期間都要輸入數(shù)據(jù)實(shí)在太無聊(依據(jù)我的經(jīng)歷驗(yàn)證),故此實(shí)現(xiàn)了一種將數(shù)據(jù)保存在文件里的機(jī)制。 單擊“保存/加載(Save/Load,)”后,將檢查參數(shù)列表中之前輸入的數(shù)據(jù)的可用性。 如果列表已填寫,則將接收到的參數(shù)保存到文件當(dāng)中。 如果列表為空,選擇一個(gè)文件,將從中加載含有通關(guān)優(yōu)化數(shù)據(jù)的列表。 內(nèi)部文件結(jié)構(gòu)將在今后的文章里講述。 像該程序生成的所有其他文件一樣,它是 xml 格式。 請注意,日期輸入格式為 “DD.MM.YYYY”,而數(shù)據(jù)的顯示格式為 “MM.DD.YYYY”。 這是因?yàn)槿掌跁?huì)自動(dòng)轉(zhuǎn)換為字符串。 這對我來說不是很關(guān)鍵,這就是為什么我決定不干涉此行為。 ? ? ?


同樣,由于設(shè)置文件的文本格式,赫茲股票量化無法區(qū)分算法參數(shù)的格式。 例如,所有枚舉參數(shù)都作為整數(shù)顯示。 這就是為什么決定在屏幕的第二個(gè)板面中以字符串形式顯示參數(shù)列表的原因。 如果這不利于您直接在自動(dòng)優(yōu)化器中配置優(yōu)化步驟,和其他機(jī)器人參數(shù),您可以在終端里執(zhí)行所有必需的設(shè)置。 然后,在更改測試器里的板面之后(或在關(guān)閉終端之后),設(shè)置將被寫入期望的文件。 您所要做的就是在自動(dòng)優(yōu)化器中選擇所需的算法 — 它會(huì)立即隨您的設(shè)置一同加載。

從自動(dòng)優(yōu)化器啟動(dòng)優(yōu)化或測試時(shí),需要設(shè)置以下字段:


  1. 選擇 EA。

  2. 檢查要優(yōu)化的參數(shù),并選擇范圍(就像在終端中一樣)。

  3. 選擇至少一個(gè)排序標(biāo)準(zhǔn):這將影響機(jī)器人所生成數(shù)據(jù)的排序,且在前向驗(yàn)證間隔中會(huì)啟用最佳結(jié)果(在測試運(yùn)行中可省略)。

  4. 選擇前向驗(yàn)證優(yōu)化日期(如果運(yùn)行測試,則選擇測試日期)。 ?

  5. 若您運(yùn)行優(yōu)化,選擇所需的優(yōu)化器(“Select Optimiser::”下拉列表)。

  6. 指定 "Asset name" — 將依據(jù)此品種名稱執(zhí)行請求的操作。 發(fā)生錯(cuò)誤時(shí),終端將無法運(yùn)行測試或優(yōu)化。

  7. 您可以使用 “Directory prefix”,為您要保存的優(yōu)化通關(guān)測試結(jié)果名稱的附加規(guī)范。 優(yōu)化結(jié)束后,將在一個(gè)特殊的程序內(nèi)部目錄中創(chuàng)建一個(gè)包含優(yōu)化結(jié)果的文件夾。 文件夾名稱設(shè)置如下:“{目錄前綴} {選定的優(yōu)化器} {智能交易系統(tǒng)名稱} {資產(chǎn)名稱}”。 這些是顯示在“優(yōu)化:”列表中的名稱,它們可從中其內(nèi)上載,以便查看和進(jìn)一步分析。

  8. “Rewrite” 或 “Append” 參數(shù)的下拉列表也是可選的。 如果它在保存參數(shù)的文件里找到同名的結(jié)果,它會(huì)設(shè)置自動(dòng)優(yōu)化器應(yīng)執(zhí)行的操作。 如果f "Rewrite" 被選中,所有文件都將被新內(nèi)容覆蓋。 如果 "Append" 被選中,匹配的優(yōu)化日期將被覆蓋。 如果在當(dāng)前優(yōu)化間隔列表和先前保存的間隔列表中找到相同的間隔,則原保存的結(jié)果將被新的結(jié)果覆蓋。 如果范圍是新的,它們只會(huì)在現(xiàn)有范圍之外添加。


一旦完成設(shè)置后,單擊 “Start/Stop” 來啟動(dòng)該過程。 再次單擊此按鈕可中斷優(yōu)化過程。 在優(yōu)化過程中,其狀態(tài)將顯示在自動(dòng)優(yōu)化器窗口底部的進(jìn)度欄和文本標(biāo)簽中。 優(yōu)化結(jié)束后,優(yōu)化結(jié)果將上傳到 “Result” 板面,且進(jìn)度欄將重置為初始狀態(tài)。 不過,如果單擊 “Start / Stop” 運(yùn)行測試,則終端不會(huì)自動(dòng)關(guān)閉。 這樣做是出于方便起見,它允許用戶查檢所有必需的數(shù)據(jù)。 一旦您研究過所需數(shù)據(jù),請手動(dòng)關(guān)閉終端,以便繼續(xù)自動(dòng)優(yōu)化器的操作。 請不要忘記終端應(yīng)始終關(guān)閉,因?yàn)閼?yīng)用程序必須能夠獨(dú)立掌管終端。

另外,您應(yīng)該在啟動(dòng)優(yōu)化之前配置優(yōu)化器本身。 這并非強(qiáng)制性需求,但是優(yōu)化管理器的結(jié)構(gòu)允許創(chuàng)建自定義優(yōu)化器,以及為每個(gè)優(yōu)化器設(shè)置獨(dú)立的參數(shù)。 單擊優(yōu)化器選擇器組合框旁邊的 “GUI” 按鈕可以打開設(shè)置。 已實(shí)現(xiàn)的優(yōu)化器的設(shè)置如下:


編輯



  1. Test on ticks — 指示歷史和前向驗(yàn)證測試中的數(shù)據(jù)測試方法。 優(yōu)化方法在 “Settings” 窗口的第一個(gè)板面中指定,而測試方法在優(yōu)化器設(shè)置中指明。 如果啟用該選項(xiàng),將依據(jù)即時(shí)報(bào)價(jià)執(zhí)行測試。 如果禁用,則以 OHLC 1 分鐘模式執(zhí)行測試。

  2. Replace real dates to set — 是否用所傳遞的日期替換實(shí)際的優(yōu)化開始日期和結(jié)束日期。 優(yōu)化的開始和結(jié)束時(shí)間采用 1 分鐘時(shí)間幀保存。 有時(shí),如果沒有交易或恰逢假期,則實(shí)際開始日期和結(jié)束日期可能與指定的日期會(huì)有出入。 如果啟用此選項(xiàng),則優(yōu)化器將設(shè)置更貼合的數(shù)據(jù),并知曉結(jié)果屬于哪個(gè)確定的間隔。 不過,若您要查看實(shí)際交易日期,請不要勾選該選項(xiàng)。

  3. Use different shift for tick test — 赫茲股票量化在第二篇文章中討論過可在結(jié)果中添加滑點(diǎn)和移位。 如果基于即時(shí)報(bào)價(jià)測試,則可以禁用滑點(diǎn)或完全減除。 此選項(xiàng)正是為此情況而添加。 它僅可在 “Test on ticks” 模式下激活。 若要使用該選項(xiàng),請指定負(fù)責(zé)代表傭金和滑點(diǎn)的算法參數(shù),并為其設(shè)置新值。 為機(jī)器人指定負(fù)責(zé)滑點(diǎn)的參數(shù),并將其設(shè)置為 0,您可在即時(shí)報(bào)價(jià)測試模式下從結(jié)果中剔除滑點(diǎn)。 指定參數(shù)及其數(shù)值之后,可通過 “Add” 參數(shù)將此參數(shù)添加到表中,以便保存該參數(shù)。


沒必要保存輸入的參數(shù)值(這里沒有 “Save” 按鈕),因?yàn)樗鼈儠?huì)自動(dòng)保存。 在啟動(dòng)優(yōu)化之前,請關(guān)閉此窗口,從而防止在優(yōu)化過程中意外更改參數(shù)。


操控優(yōu)化結(jié)果

啟動(dòng)優(yōu)化后,請勿干預(yù)該過程。 還有,直至優(yōu)化停止前,請勿從圖表中刪除 EA。 否則,優(yōu)化器將把這種狀況視為出錯(cuò),因?yàn)槿掌诓黄ヅ洹?一旦該過程完成,并關(guān)閉終端后,優(yōu)化器會(huì)將優(yōu)化報(bào)告加載到 Results 板面,您可以在其中評估完成的工作。 其結(jié)構(gòu)顯示在以下板面中:

?

編輯切換為居中


結(jié)果版面也分為多個(gè)部分,并用數(shù)字標(biāo)記,從而可簡化說明。 第一部分出具優(yōu)化通關(guān)測試,分為兩個(gè)版面(“Selected pass” 和 “Optimisations”)。 第一個(gè)容器版面稱為 “Selected pass”,其中包含選定的優(yōu)化通關(guān)遞次。 這些通關(guān)遞次分為兩個(gè)版面(“Forward” 和 “History”)。 我們看看優(yōu)化參數(shù)如何在這些版面之間分布。 例如,指定以下日期:


  1. 01.01.2012 - 07.12.2012 - History

  2. 10.12.2012 - 07.03.2012 - Forward

優(yōu)化將在歷史間隔內(nèi)執(zhí)行。 然后,利用過濾和排序篩選最佳參數(shù)(請參閱上一章中的說明)。 選擇之后執(zhí)行兩項(xiàng)測試:一項(xiàng)針對歷史記錄,另一項(xiàng)針對前向驗(yàn)證時(shí)間間隔。 進(jìn)而,將最佳參數(shù)的測試結(jié)果添加到 “Selected pass” 選卡中,在 “History” 和 “Forward” 選卡之間進(jìn)行切分。 優(yōu)化通關(guān)過程將添加到 “Optimisations” 選卡中,您可以在其中查看任何歷史間隔的整個(gè)優(yōu)化列表。 更詳盡地研究 “optimizations” 選卡。


編輯切換為居中


表格結(jié)構(gòu)(“Optimisations”選卡的第一部分)類似于 “Forward” 和 “History” 選卡的結(jié)構(gòu)。 但是此表顯示了在請求間隔內(nèi)的所有優(yōu)化通關(guān)遞次。 可以從 “Optimisation dates” 組合框中選擇所需的時(shí)間間隔。 選擇新的時(shí)間間隔后,將更新含有優(yōu)化通關(guān)遞次的整個(gè)表格。 該選卡的第二部分類似于 “Settings” 窗口的第三部分,并且這些選卡中的所有更改都已同步。

“Optimisations” 選卡和 “Selected pass” 選卡都包含 “Save to (*.csv)” 按鈕。 單擊 “Selected pass” 按鈕時(shí),將創(chuàng)建一個(gè) *.csv 文件,其中包含歷史和前向驗(yàn)證遞次的列表。 單擊 “Optimisations” 按鈕時(shí),所有已執(zhí)行優(yōu)化的相關(guān)信息將下載到相應(yīng)的 *.csv 文件之中。 按鈕 “Sort” 和 “Filter” 僅在 “Optimisations” 選卡中可用。 它們的目的是根據(jù) “Optimisations” 選卡第二部分中指定的設(shè)置,對生成的優(yōu)化遞次進(jìn)行過濾和排序。 實(shí)際上,由于自動(dòng)優(yōu)化器采用相同的機(jī)制,因此不需要此選項(xiàng)。 不過,該選項(xiàng)允許利用任何期望的自定義過濾。

兩個(gè)表都是交互式的。 單擊表格行會(huì)根據(jù)所選的優(yōu)化通關(guān)遞次更新 “Result” 板面的第二部分和第三部分。 雙擊則將在終端中啟動(dòng)測試。 在這種情況下,測試結(jié)束后將不會(huì)關(guān)閉終端。 因此,在研究結(jié)果之后,您應(yīng)手動(dòng)將其關(guān)閉。 在開始測試之前,可以配置一些測試器參數(shù):“Results” 選卡的第二部分。


編輯


測試開始和結(jié)束日期會(huì)根據(jù)所選時(shí)間間隔自動(dòng)更新。 然而,可以通過雙擊所需的行來更改它們。 您還可以選擇執(zhí)行延遲,和測試類型(即時(shí)報(bào)價(jià),OHLC 等)。 "No delay" 和 "Every tick" 作為默認(rèn)設(shè)置。


股票量化交易軟件:連續(xù)前行優(yōu)化4優(yōu)化管理器(自動(dòng)優(yōu)化器)的評論 (共 條)

分享到微博請遵守國家法律
英德市| 通道| 望谟县| 崇左市| 青浦区| 平阴县| 博客| 红桥区| 平潭县| 丹凤县| 和平区| 花垣县| 平定县| 祁东县| 南召县| 夏邑县| 浦江县| 静乐县| 蒙城县| 安岳县| 浦江县| 祁东县| 昆明市| 鸡东县| 子洲县| 郓城县| 策勒县| 晴隆县| 沙雅县| 出国| 柯坪县| 镇远县| 泰兴市| 西畴县| 盘山县| 南投县| 大竹县| 酒泉市| 双流县| 安西县| 织金县|