打印本文
關閉窗口
MetaTrader 4 客戶端內的智能交易測試: 內部模式
作者:MT4 來源:cxh99.com 發布時間:2012年05月21日
如果您還沒有開啟測試,在執行測試前打開 "測試"窗口。執行測試有以下幾種方法: 進入"查看-策略測試" 主菜單,按 Ctrl+R鍵,在工具欄中點擊 "策略測試",使用圖表的上下菜單將智能交易添加到圖表中("智能交易-策略測試")或按 F6。
開始測試之前,需要選擇智能交易。可以從彈出的窗口中選擇或使用鼠標從“導航”窗口拖至“測試”窗口。測試的貨幣對同樣可以通過這種方法選定:在彈出的窗口中選定或從“市場觀察”窗口拖出。按鍵 F6 可以同時選擇智能交易、貨幣對和激活圖表周期,但是智能交易必須添加到激活的圖表中。
我們必須選擇一種
歷史數據模式
方法。一些交易策略與柱狀的價格變動是處于獨立的狀態,它們是在已成型的柱狀圖上交易。一個新柱的測試文件顯現說明當前柱已經完成模式。一些智能交易也會通過 "僅用開盤價"的模式模式化。值得說明的是,如果當前柱的數據使用到智能交易的交易的決定上,那么這些智能交易測試使用“僅用開盤價”將是
遠遠不夠的
!通常,智能交易運行完成的柱含有以下代碼去檢驗下一個柱:
static datetime prevtime=0;...if(prevtime == Time[0]) return(0);prevtime = Time[0];[/pre]所有其他的情況下必須使用“每個替克”模式。通常不建議使用“控制點”模式。這種模式是對于在優化模式中智能交易運行的天然估測。在
優化的基因演算
添加到策略測試以后,需要使用“控制點”模式。使用每個替克模式測試僅有歷史數據是遠遠不夠的,還需要一分鐘可用數據。數據的數量是越多越好。如果沒有一分鐘的可用數據,五分鐘的可用數據也可以使用到模式化中。如果同樣沒有五分鐘數據,十五分鐘數據同樣可以使用等等。 當然,這樣質量會有所降低。
當點擊“開始”后, 首先將會生成改變價格的測試次序,這些將存儲到 FXT 延伸文件中。 全部 FXT 文件存放在<client_terminal_dir>\tester\history 目錄和類型名稱SSSSSSPP_M.fxt 如下:
SSSSSS
- 測試的貨幣對;
PP
- 一分鐘內測試貨幣對時間周期值;
M
- 測試模式(0 - "每個替克", 1 - "控制點", 2 - "僅用開盤價")。
在 FXT-文件標題中寫出當前護壁對的設定和當前賬戶的設定。客戶端會自動從交易服務器中獲取這些設定信息。因此,真實服務器功能將同樣被測試:調用保證金的計算, 傭金,稅金等等。如果當前沒有連接,那么最后的設定將使用到交易服務器上,客戶端的最后鏈接。 當按開始按鈕時,FXT文件每次都會格式化。現在出現了問題:如果每次都需要格式化,為什么使用該文件?首先, 很多替克數據不能夠與計算機的 RAM融合。因此,出于優化目的外部儲備的大量數據是非常重要的。其次,我們可以檢驗測試生成的次序。在定單中可以獨立打開文件查看價格柱的模式發展。
那么,為什么要重新計算已經存在的數據呢?
首先,經常性的需要在最后的歷史數據上測試。
其次,經常出現每個替克的初始形成數據在較短的時間期限內不能夠從服務器下載生成測試順序。問題在于數據的抽取是異步的。因為服務器不會通知客戶所請求的數據已經傳送。但我們可以確定的是所有請求的數據會在一分鐘到兩分鐘內接收到。
第三是最重要的一點。用戶的賬戶擁有不同的經紀商。不同的經紀商提供的不僅僅是不同的交易狀態(請保留含有同時交易服務器運行重要信息的 FXT-文件標題), 在歷史數據成交量和質量上也存在差別。這種情況下,在切換賬戶測試時,建議重新計算數據。
第四, 在客戶端內經常沒有來自不同可用源代碼的不同時間期限數據。在客戶端為基本貨幣對提供大量歷史下載數據以后,問題變得更加嚴重。很多交易者使用真實的經紀商交易,從MetaQuotes服務器上下載數據。 這點對于模式化的質量起著決定性的作用。需要注意的是測試考慮對于不同時間期限數據不一致的錯誤。那么這是些什么樣的錯誤呢?
如果使用日期“起始”和“截至” ,必須清楚測試形成的順序(必須檢驗“使用日期”的相關欄)。測試的開始時間沒有按照“起始”日期。在開始生成替克之前,在準備模式化的柱中在測試順序前端的接近 4千左右的柱被略過。如果初始柱較少,歷史前端的所有柱都會使用。但這些柱的數額不少于 100。因此,如果 "起始"日期非常接近整個歷史的起點,替克生成可能會在指定日期后開始。為此,在測試開始以前我們提供最少100個柱。在生成順序中的初始柱需要幫助智能交易在先前數據的基礎上正確計算指標 (特別是移動平均數)。 下面是一個起始時間設定為2007.08.01模式替克生成的順序 :
當到達“截至”日期時,模式化結束。從截至日起的 0:00 點開始價格數據退出測試和生成順序。如果指定數據超出歷史范圍或無效“使用日期”, 全部歷史 (前 100 個柱除外)將介入生成。圖表中柱的最多數額設定并不意味著全部模式化 - 使用存儲在硬盤上的全部歷史。
如果在測試順序生成期間歷史數據少于100 個柱,在測試日志中將會顯示 "TestGenerator: deficient data"并且不會開啟測試。如果日期范圍指定錯誤,可能沒有任何數據顯現。在測試日志中也將會顯示"TestGenerator: no history data"信息。這種情況下,必須確定提供的歷史數據總數。確保這些數據能夠打開相應圖表并且使用PageUp鍵手動抽取數據,隨后“重新計算”并重新開始測試。
在開始測試之前,必須指定智能交易測試的進入參量。特別要注意貨幣存款額。例如,如果不指出RUB,一個 micex類型的賬戶打開,在GAZP上的智能交易測試將沒有任何結果 (這個貨幣可以手動指出):
如果在智能交易中
外部變量
顯示,“輸入數據”將會隱藏。輸入數據值得不通社之被保存在不同名稱的設置文件中 ("保存"鍵)和備用("加載"鍵).
點擊 "修改智能交易"鍵將會調用 MetaEditor,智能交易測試可以打開編輯。在測試開始時該鍵被鎖定。不過, MetaEditor 仍然可以進行編譯智能交易,甚至是測試在運行中。在下次開始測試時,重新編譯的智能交易將自動重新加載測試。
智能交易測試期間有很好的記錄功能,無需重新加載。
建議在測試期間改變智能交易的源代碼可以節省您的時間。測試完成之后,您可以點擊“開始”鍵再次測試已經修改的智能交易。但不是先前加載的執行文件將被測試。重新加載新版本的智能交易,您需要奠基“停止”鍵或者等待測試的完成。只有在這之后,在MetaEditor中開始重新編譯你的智能交易。
在測試完成之后,您可以打開帶有交易業務箭頭的圖表和測試期間的指標。不過,測試期間使用的指標將以默認顏色顯示。例如,如果使用不同時間周期平均數的移動平均數,它們全部以紅色顯示。當然這樣很不方便。這個顏色可以進行手動改變,不過還有其他的解決方法。如果可以提前命名帶有附加指標的模板為 <expert_name>.tpl (for example, Moving Average.tpl) ,當圖表打開測試時會使用該模板。如果沒有可用模板,將接受tester.tpl 模板。
這里還需要注意一處細節。如果以上面的方法打開測試圖表,當前歷史數據將被加載進入。如果已經包含測試順序,沒有任何問題。如果使用的數據是其他數據提供呢? 很遺憾,測試策略會支持所謂的策略測試直觀化。
如果檢測“直觀化”,使用 <expert_name>.tpl 或 tester.tpl模板“調試”圖表將自動從服務器中打開。圖表會顯示當前測試順序的狀態。通過滑動的方法可以改變直觀化的比率。如果向左移動,比率降低。如果向右移動,比率加快。使其停頓,可以按 "||" 按鈕或者鍵盤上的 Pause鍵。停頓之后繼續測試,需要按 ">>"按鈕或再次按 Pause鍵。測試停頓時,可以通過 F12 一步一步地手動直觀化。 加速使用 "+" 按鈕,減速使用"-"按鈕。指定日期可以點擊"跳至"。這種情況下,直至測試到達指定日期都無需重新繪制圖表,本質上加快了進程。 測試結束后(或是通過點擊“停止”),歷史數據將會顯示在圖表上。
查看測試圖表,可以通過鼠標雙擊相應的部分得到對應結果。如果測試圖表已經打開 (檢測"直觀化"或點擊 "打開圖表"),在“結果”欄中雙擊將移動至相應的日期。
優化交易策略, 至少需要兩步完成。在“設置”欄中檢測“優化”并設定初始值和最終值。在智能交易屬性窗口“輸入數據”欄改變優化參量的增加值。
如果智能交易沒有任何輸入數據,則不能夠進行優化。優化的過程可以提高優化限定設置。
當達到相應的限定后,測試停止通過參量。測試開始新(下一個)輸入數據的設定。另外,如果因為限定而終止參量通過,優化視為失敗并且不會列出結果。負值贏利同樣視為失敗。為了使沒有通過的參量不在優化結果的列表中出現,需要在“優化結果”欄的上下菜單中選擇“忽略無效結果”。
經常性由于類似“策略優化沒有運行”的原因,以默認的方式列出失敗結果。這種情況下,在日志內將會顯示 "NNN results have been discarded as insignificant" 信息。
要加快優化的進程,需要實現結果存儲。如果重復優化通過參量,測試在當前輸入數據設定的存儲結果中找到,找到結果會被使用。這樣,優化可以停止運行,因為在下一個智能交易的相同數據優化開啟時將允許從先前計算結果和繼續計算結果中獲得。如果測試數據已經改變、智能交易重新編譯或者智能交易使用的數據庫被替換,優化結果將被重新設置并且在此進行計算。
測試不能夠控制水平2或更高數據庫的改變 (即,數據庫調用其他數據庫)!
這就是在一些情況下需要手動重設存儲的原因。例如,智能交易的重新編譯。包含存儲數據的文件被保存在 tester\caches 目錄中。
當
基因演算
開啟后,對于優化結果存儲會起到幫助作用。在智能交易的屬性窗口的“測試”欄中可以開啟優化基因演算。
基因演算的參量被自動指定
總體的數量取決于全部可結合參量的總數,并且其值在64 到256之間。
最少生成總數取決于總體大小,并且其值在15到31之間。
因此,最少基因優化通過總數在 960到7936的范圍之內。
交叉的可能性為100%。基因隨意偶然交叉,不排除自身交叉。
變化的可能性為10%。
反方向的可能性為10%。
如果基因庫在10代之后沒有改進,基因優化將會停止。需要具備最少基因代形成數量。
測試日志在目錄 \logs中被鎖定。 文件本身含有延伸 .log。每天有存在相應單獨的 log 文件。測試 log會在5天之內自動刪除。如果從“日志”的上下菜單中選擇 "清除全部日志",該欄的當前內容將被刪除,所有 log 文件將被移除。
測試期間日志內大量數據輸出在“日志”欄內可能不會得到完整的信息,但是可以確定它們進入 log 文件。優化過程中日志內沒有輸出數據提供。
測試完成后,可以刪除不再繼續使用測試業務的數據。騰空數據,可以在主菜單中關閉“測試”窗口或 Ctrl-R 再者在工具欄中點擊“策略測試”。
打印本文
關閉窗口
主站蜘蛛池模板:
亚洲成AV人片在线观看无码不卡
|
国模欢欢炮交150视频
|
亚洲乱码卡一卡二卡三
|
狠狠躁夜夜躁人人爽天天天天97
|
国产成人高清亚洲一区app
|
91手机视频在线
|
大胸美女放网站
|
xxxxwww日本在线
|
欧洲精品一卡2卡三卡4卡乱码
|
欧美午夜精品久久久久免费视
|
欧美福利在线播放
|
欧美人与z0xxxx另类
|
日韩亚洲av无码一区二区不卡
|
日韩高清在线日韩大片观看网址
|
国产精品萌白酱在线观看
|
www国产精品
|
成人午夜精品久久久久久久小说
|
激情综合色综合久久综合
|
欧美日本高清视频在线观看
|
在线播放第一页
|
免费在线观看黄网
|
久久亚洲精品无码观看不卡
|
夜月高清免费在线观看
|
国产精品免费大片
|
国产偷自视频区视频
|
亚洲精品中文字幕乱码三区
|
av无码精品一区二区三区
|
少妇高潮喷水久久久久久久久久
|
中文无码人妻有码人妻中文字幕
|
日本不卡一二三
|
久久久久亚洲av无码尤物
|
日本精品久久久久中文字幕
|
国产精品无码久久av
|
91亚洲国产在人线播放午夜
|
国外性xxxnxxxf视频
|
99久久久精品免费观看国产
|
在线观看的免费视频网站
|
99福利视频导航
|
在线观看免费午夜大片
|
99热这里只有精品免费播放
|
亚洲人成色在线观看
|