人人爽天天爽夜夜爽qc-人人爽天天爽夜夜爽曰-人人天天爱天天做天天摸-人人天天夜夜-色网站在线-色网站在线看

您現在的位置:程序化交易>> 外匯現貨>> MT4>> MT4知識>>正文內容

MetaTrader 4 客戶端內的智能交易測試: 內部模式 [MT4]

  • 如果您還沒有開啟測試,在執行測試前打開 "測試"窗口。執行測試有以下幾種方法: 進入"查看-策略測試" 主菜單,按 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 再者在工具欄中點擊“策略測試”。


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 久草高清在线 | 日韩美女视频在线 | 天天操天天摸天天干 | 欧美成人免费全部观看天天性色 | 成年视频xxxxx免费播放软件 | 欧美超强性xxxxx | 高清一区二区亚洲欧美日韩 | 老人与老人免费a级毛片 | 欧美黑人巨大日本人又爽又色 | 免费黄色大片 | 1024手机在线播放 | 激情插| 看黄免费在线 | 黄色片日韩 | 国产成人精品一区二三区在线观看 | 亚洲欧美日韩国产精品26u | 黄色片大全在线观看 | 伊人婷婷色香五月综合缴激情 | 韩国理论午夜 | 男人趴在女人身上曰皮免费 | 手机看高清特黄a大片 | 亚洲天天做日日做天天看 | 亚洲欧美在线观看播放 | 99精品影视 | 免费在线视频一区 | 99久久精品国产亚洲 | 99r在线视频| 日本久久中文字幕 | 国产午夜精品一二区理论影院 | 天堂网视频在线观看 | 一个人看的视频www免费 | 日本高清一区二区三区水蜜桃 | 最近2019免费中文字幕视频三 | 日本中文字幕在线观看 | 50岁老女人毛片一级亚洲 | 午夜成年人视频 | 免费看h片网站 | www视频在线播放 | 国产成人免费网站 | 午夜黄色网 | 欧美日韩一区二区三区高清不卡 |