99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀一個完整的量化模型包括哪些
一個完整的量化模型包括哪些
2018-07-30
收藏

一個完整的量化模型包括哪些

近幾年,量化投資在國內(nèi)興起,但在很多人眼里,量化投資仿佛是一個非常神秘的新事物。而實際上,量化投資的無非就是寬客通過計算機語言,將交易策略布置到一個量化系統(tǒng)中,然后進行回測和實戰(zhàn)的過程。量化投資的本質(zhì)還是投資者的智慧,只是實現(xiàn)過程中運用到計算機這一工具。

       寬客們到底是如何系統(tǒng)的構(gòu)建一個完整的量化模型的?可以肯定的是,寬客跟普通投資者一樣,也在觀察市場,產(chǎn)生一些普通投資者也會想到的想法,當(dāng)寬客產(chǎn)生一些想法時,他們會通過計算機去驗證他們的想法是否靠譜或者是能否帶來收益。而作為普通投資者,實現(xiàn)想法往往是困難的,如同普通投資者在投資或炒股過程中,發(fā)現(xiàn)在15分鐘K線圖,上升趨勢中股價跌破MA169后便會進入調(diào)整。普通投資者只是感覺,而寬客可以通過編寫程序然后在市場的歷史數(shù)據(jù)回測,驗證這個想法是否靠譜。

一個簡單的想法編寫成簡單的程序,這明顯不能稱作為量化模型,但這卻是任何一個量化模型的來源,即人的想法。完整的量化模型應(yīng)當(dāng)包括:策略模型、風(fēng)險模型、交易成本模型、投資組合構(gòu)建模型、執(zhí)行模型,如下圖:

       策略模型:策略模型可以說是整個量化模型最核心的部分,決定了整個量化模型的盈利能力。策略模型五花八門,歸類劃分為:理論驅(qū)動型和數(shù)據(jù)驅(qū)動型。數(shù)據(jù)驅(qū)動型的策略通過對數(shù)據(jù)的分析而揭開市場的面紗,說白了就是靠數(shù)據(jù)解釋一切市場行為。理論驅(qū)動型策略通過理論去預(yù)測未來的市場行為,而其中的理論就是人們通過對市場的觀察,然后給出符合經(jīng)濟學(xué)原理的解釋。

       理論驅(qū)動型的策略可以劃分為兩大類:基于價格數(shù)據(jù)的交易策略和基于基本面數(shù)據(jù)的交易策略。基于價格數(shù)據(jù)的交易策略有:趨勢跟隨型(動量策略)、均值回復(fù)策略、技術(shù)情緒策略。基于基本面數(shù)據(jù)的交易策略有:價值型、成長型、品質(zhì)型。如下圖:

       1.趨勢跟隨型:標(biāo)志性策略就是雙均線策略,投資者認(rèn)為在一定時間內(nèi)市場通常是朝著同一方向變化的。說白了,就是看漲做漲。

       2.均值回復(fù)型:標(biāo)志性策略就是統(tǒng)計套利策略,投資者認(rèn)為在一定時間內(nèi)市場并非朝著同一方向變化的。說白了,就是超漲了賣,超跌了買。

       3.技術(shù)情緒型:標(biāo)志性策略就是情緒指標(biāo)策略,投資者認(rèn)為通過某些價格、成交量可以暗示對投資者對后續(xù)行情的情緒,隨后進行相應(yīng)操作。其中比較有意思是通過比較期權(quán)的認(rèn)購量和認(rèn)沽量,來判斷投資者對后續(xù)行情的情緒。

       4.價值型:價值型策略的基本理念是:收益率越高,價格越低。通俗的講,買入被低估的證券,賣出被高估的證券。

       5.成長型:成長型策略往往投資成長性公司,成長性公司是指較長一段時間內(nèi),具有持續(xù)挖掘未利用資源能力,不同程度地呈現(xiàn)整體擴張態(tài)勢,未來發(fā)展預(yù)期良好的企業(yè)。通俗的講,買入正在快速發(fā)展以及具有良好發(fā)展前景的公司股票。

       6.品質(zhì)型:品質(zhì)型策略選擇公司的標(biāo)志就不一樣,有杠桿比率、收入來源的多樣性、管理水平、欺詐風(fēng)險等等。

       上述策略模型在實施過程中必須考慮選股范圍、選股標(biāo)準(zhǔn)、投資期限、交易信號、倉位控制、止盈止損。一個策略模型應(yīng)當(dāng)包含的因素都不可少,不然會影響到整個策略模型,進而導(dǎo)致整個量化模型失敗。

       風(fēng)險模型:風(fēng)險模型對于一個量化模型來說,是不可缺少的,它能提高量化模型盈利的質(zhì)量和穩(wěn)定性。風(fēng)險模型分為:內(nèi)部風(fēng)險和外部風(fēng)險。內(nèi)部風(fēng)險有:數(shù)據(jù)錯誤,個股風(fēng)險,市場風(fēng)險等等。外部風(fēng)險有:網(wǎng)絡(luò)風(fēng)險,技術(shù)風(fēng)險,物理風(fēng)險等。

       1.數(shù)據(jù)錯誤:模型進行回測或者實盤交易的過程中,數(shù)據(jù)本身如果是錯誤的,那么交易最終的結(jié)果也是沒有意義的,如果是實盤交易,那么后果也是不堪設(shè)想的。

       2.市場風(fēng)險:量化模型在實盤交易過程中,由于整個策略程序并不能完美的預(yù)測出未來市場的任何一個變化,當(dāng)寬客發(fā)現(xiàn)市場環(huán)境出現(xiàn)巨大變化,導(dǎo)致與量化策略所適應(yīng)的的環(huán)境不一致時,就需要進行量化策略的暫停。

       3.個股風(fēng)險:與市場風(fēng)險對應(yīng)的是個股風(fēng)險,基于價格數(shù)據(jù)驅(qū)動的策略尤其需要堤防個股風(fēng)險,當(dāng)公司的基本面短時間內(nèi)發(fā)生巨大變化時,但技術(shù)層面并未及時更新,導(dǎo)致量化模型買入垃圾股票。

       4.外部風(fēng)險:外部風(fēng)險指的是量化模型在實施過程中的現(xiàn)實風(fēng)險,比如計算機下單時,由于網(wǎng)絡(luò)中斷,計算機硬件損壞,打雷地震等,導(dǎo)致交易單并未傳送到交易所,從而產(chǎn)生損失。

       設(shè)置風(fēng)險模型的意義就在于,當(dāng)量化模型遇到上述風(fēng)險時,寬客能夠及時采取措施,進行人工干預(yù)或者預(yù)備計算機啟動,盡可能的減少損失。

       交易成本模型:策略模型在于盈利,風(fēng)險模型在于規(guī)避損失,交易成本模型則在于控制成本,使得整個量化模型的盈利最大化。交易成本模型的基本理念是:策略模型在運行過程中發(fā)生的成本較為精確的計算出來,從交易成本可以判斷出策略模型運行頻率。

       交易成本一般有:傭金與費用、滑點、市場沖擊成本。通常計算交易成本的方法有:常值型交易成本,線性交易成本,分段型交易成本。在真實的交易環(huán)境中,由于市場沖擊成本的存在,每次交易的成本都是不一樣的,常值型和線性交易成本的缺陷非常明顯,而分段型交易成本在實際操作過程中略微復(fù)雜,因此精確的計算出交易成本本身就是一項技術(shù)活。

       投資組合構(gòu)建模型:投資組合構(gòu)建模型在于構(gòu)建一個能創(chuàng)造最大盈利的投資組合。主要分為:基于規(guī)則的投資組合構(gòu)建模型和基于優(yōu)化的投資組合構(gòu)建模型。基于規(guī)則的投資組合構(gòu)建模型主要分三類:相等頭寸加權(quán),相等風(fēng)險加權(quán),信號驅(qū)動型加權(quán)。其中前兩類分別保證了投資組合的每個個股頭寸相等和所承擔(dān)的風(fēng)險相等。第三類根據(jù)信號強度來加權(quán),投資組合中個股與策略模型設(shè)定的條件越接近則賦予的權(quán)重越大,這是合理決定頭寸規(guī)模的最佳途徑。

       執(zhí)行模型:執(zhí)行模型是實施量化模型的最后一個環(huán)節(jié),如果沒有執(zhí)行模型,那么整個量化模型并沒有存在的意義。執(zhí)行模型中訂單執(zhí)行算法是最關(guān)鍵的,其主要目的是,以盡可能低的價格,盡可能完整地完成想要交易的訂單。具體的執(zhí)行算法包括:采用何種訂單類型,采用進取訂單還是被動訂單,采用大訂單還是小訂單。對于資金量比較小的寬客,執(zhí)行模型往往是比較簡單的,一旦出現(xiàn)信號,其所需成交量的并不需要太大。而對于資金量較大的寬客來說,執(zhí)行模型是比較復(fù)雜的,需要根據(jù)實際情況來選擇合適的下單方式。

       以上就是量化模型的整個系統(tǒng)框架,其中任何一個部分都發(fā)揮至關(guān)重要的作用,因此一個完整的能盈利的量化模型是非常有價值的

數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }