国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      多維投資指標(biāo)監(jiān)督方法與流程

      文檔序號(hào):12363102閱讀:433來源:國知局
      多維投資指標(biāo)監(jiān)督方法與流程

      本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤指一種多維投資指標(biāo)監(jiān)督方法。



      背景技術(shù):

      投資監(jiān)督主要是實(shí)現(xiàn)銀行對(duì)托管的資產(chǎn)在由管理人(主要是基金管理公司)管理運(yùn)作時(shí)的投資行為進(jìn)行事前把關(guān)和事后監(jiān)督的功能,而具體監(jiān)督哪些維度和方面是根據(jù)法律法規(guī)、基金合同、基金契約等具體規(guī)定。

      投資監(jiān)督的核心業(yè)務(wù)邏輯主要體現(xiàn)在由相關(guān)規(guī)定和相關(guān)合同,結(jié)合相關(guān)來源數(shù)據(jù)衍生出來的監(jiān)控指標(biāo)里面。監(jiān)控指標(biāo)邏輯主要是對(duì)各種來源的信息數(shù)據(jù)進(jìn)行判斷、過濾、合并、計(jì)算等操作,得出監(jiān)控結(jié)果,與相關(guān)合同法律規(guī)定的閥值進(jìn)行比對(duì),進(jìn)而確定投資行為的合法合規(guī)性,在違規(guī)時(shí)及時(shí)提醒管理人調(diào)整投資策略和行為。

      傳統(tǒng)實(shí)現(xiàn)由于各類指標(biāo)都是逐步完善,因此主要依賴手工獨(dú)立重復(fù)開發(fā),針對(duì)每一個(gè)合同規(guī)定和法律條文,都由開發(fā)人員從頭開發(fā)出一段邏輯,根據(jù)預(yù)先設(shè)定的調(diào)用參數(shù)逐個(gè)匹配調(diào)用,并將處理數(shù)據(jù)產(chǎn)生監(jiān)控結(jié)果保存到數(shù)據(jù)庫中,請(qǐng)參考圖1所示。每個(gè)指標(biāo)都獨(dú)立開發(fā),主要實(shí)現(xiàn)當(dāng)前的業(yè)務(wù)需求,由于缺乏預(yù)見性很難考慮將來可能的擴(kuò)展和變化,也無法考慮該指標(biāo)與之前指標(biāo)的關(guān)系。這種方式主要存在如下的問題:

      (1)指標(biāo)沒有分門別類,在指標(biāo)很多時(shí)不好查找和使用;

      (2)每個(gè)指標(biāo)的邏輯都寫死,沒有變化;

      (3)指標(biāo)之間重疊的邏輯也重復(fù)開發(fā),邏輯復(fù)用基本沒有;

      (4)指標(biāo)的開發(fā)工作量大,維護(hù)成本高。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明目的在于提供一種投資監(jiān)督領(lǐng)域方法,分解監(jiān)督指標(biāo)涉及的因素,并進(jìn)行可視化定義,以擴(kuò)大模型的適應(yīng)性,節(jié)約系統(tǒng)運(yùn)維成本,提高系統(tǒng)適應(yīng)資本市場(chǎng)快速變化的需要。

      為達(dá)上述目的,本發(fā)明具體提供一種多維投資指標(biāo)監(jiān)督方法,所述方法包含:獲取指標(biāo)涉及的因子,根據(jù)所述因子匹配指標(biāo)計(jì)算公式并配置所述因子的限定屬性;根據(jù)指標(biāo)定義保存的配置信息、因子數(shù)值類型和限定屬性生成指標(biāo)計(jì)算公式中每個(gè)因子的取數(shù)SQL;執(zhí)行指標(biāo)的各取數(shù)SQL,將獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述獲取指標(biāo)涉及的因子之前還包含:根據(jù)托管投資監(jiān)督的監(jiān)控主體和監(jiān)控指標(biāo)建立所述因子。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)還包含:將存儲(chǔ)的計(jì)算結(jié)果與預(yù)定閥值作比較,根據(jù)比較結(jié)果判斷所述指標(biāo)是否合規(guī)。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述根據(jù)指標(biāo)定義保存的配置信息、因子數(shù)值類型和限定屬性生成指標(biāo)計(jì)算公式中每個(gè)因子的取數(shù)SQL包含:根據(jù)因子的數(shù)值類型,獲取主SQL;根據(jù)限定屬性,獲得拼接JOIN的配置,將所述JOIN的配置代入所述主SQL中;根據(jù)限定屬性,替換WHERE信息中的控制符和控制值,將替換后的WHERE信息代入所述主SQL中;根據(jù)數(shù)值類型和限定屬性,替換所述主SQL中公共變量。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述執(zhí)行指標(biāo)的各取數(shù)SQL,將獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)包含:如果是事后監(jiān)控,獲取取數(shù)SQL中的變量,用獲取的指標(biāo)中的值替換變量,執(zhí)行所述取數(shù)SQL,獲取執(zhí)行結(jié)果;將所述執(zhí)行結(jié)果代入指標(biāo)計(jì)算公式中計(jì)算,得到指標(biāo)的計(jì)算結(jié)果;將存儲(chǔ)的計(jì)算結(jié)果與預(yù)定閥值作比較,根據(jù)比較結(jié)果判斷所述指標(biāo)是否合規(guī),并將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述執(zhí)行指標(biāo)的各取數(shù)SQL,將獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)包含:如果是事前監(jiān)控,獲取因子的相關(guān)性檢測(cè)SQL,用獲取的指標(biāo)中的值代入所述檢測(cè)SQL中,執(zhí)行所述檢測(cè)SQL,如果有結(jié)果表示交易和指標(biāo)相關(guān),指標(biāo)需要運(yùn)算,否則指標(biāo)不需要運(yùn)算;如果相關(guān)性檢測(cè)通過,將指標(biāo)中的值代入取數(shù)SQL中,執(zhí)行所述取數(shù)SQL,獲取執(zhí)行結(jié)果;將所述執(zhí)行結(jié)果代入指標(biāo)計(jì)算公式中計(jì)算,得到指標(biāo)的計(jì)算結(jié)果;將存儲(chǔ)的計(jì)算結(jié)果與預(yù)定閥值作比較,根據(jù)比較結(jié)果判斷所述指標(biāo)是否合規(guī),并將所述合規(guī)情 況寫入指標(biāo)的監(jiān)控結(jié)果。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果包含:根據(jù)所述計(jì)算結(jié)果,將任務(wù)號(hào)寫入一個(gè)阻塞隊(duì)列;根據(jù)所述任務(wù)號(hào),取出結(jié)存儲(chǔ)的監(jiān)控結(jié)果;根據(jù)所述監(jiān)控結(jié)果信息,賦值給所述監(jiān)控結(jié)果批次,同時(shí)刪除上一批次的監(jiān)控結(jié)果;將結(jié)果配置表與所述指標(biāo)結(jié)果匹配,獲得結(jié)果寫入的結(jié)果表字段值;將所述監(jiān)控結(jié)果存儲(chǔ)入數(shù)據(jù)庫。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果包含:根據(jù)所述計(jì)算結(jié)果,將任務(wù)號(hào)寫入一個(gè)阻塞隊(duì)列;根據(jù)所述任務(wù)號(hào),取出結(jié)存儲(chǔ)的監(jiān)控結(jié)果;根據(jù)所述監(jiān)控結(jié)果信息,賦值給所述監(jiān)控結(jié)果批次,同時(shí)刪除上一批次的監(jiān)控結(jié)果;將結(jié)果配置表與所述指標(biāo)結(jié)果匹配,獲得結(jié)果寫入的結(jié)果表字段值;判斷所述監(jiān)控結(jié)果對(duì)應(yīng)的指標(biāo)是否有共同賬號(hào)的交易,當(dāng)所有共同賬號(hào)的交易都計(jì)算后,將所述共同帳號(hào)的監(jiān)控結(jié)果與所述指標(biāo)的監(jiān)控結(jié)果合并后存儲(chǔ)入數(shù)據(jù)庫。

      本發(fā)明的有益技術(shù)效果在于:

      1、將涉及領(lǐng)域模型出發(fā)制定領(lǐng)域概念與數(shù)據(jù)庫的映射關(guān)系,產(chǎn)生可供配置的自動(dòng)拼接SQL語句的實(shí)踐,為今后類似統(tǒng)計(jì)比較類系統(tǒng)設(shè)計(jì)上提供了可行技術(shù)方案。

      2、提供使用人員自定義指標(biāo)的功能,符合投資監(jiān)督指標(biāo)的多樣性、易變性特點(diǎn),提高了技術(shù)預(yù)見性,降低了項(xiàng)目投入成本。

      3、利用數(shù)據(jù)庫SQL的拼接運(yùn)行,規(guī)范了應(yīng)用語言,提高了應(yīng)用的正確性,高效性。

      4、依靠數(shù)據(jù)庫自身優(yōu)化能力,提高了程序運(yùn)行效率,相同工作在新方案的應(yīng)用下性能提高300%。

      附圖說明

      此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,并不構(gòu)成對(duì)本發(fā)明的限定。在附圖中:

      圖1為現(xiàn)有技術(shù)領(lǐng)域中指標(biāo)監(jiān)督示意圖;

      圖2為本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法的流程示意圖;

      圖3為本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法的整體流程示意圖;

      圖4為本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法的指標(biāo)SQL生成流程示意圖;

      圖5為本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法的指標(biāo)計(jì)算流程示意圖;

      圖6為本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法的指標(biāo)寫入流程示意圖。

      具體實(shí)施方式

      為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下面結(jié)合實(shí)施例和附圖,對(duì)本發(fā)明做進(jìn)一步詳細(xì)說明。在此,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,但并不作為對(duì)本發(fā)明的限定。

      每個(gè)監(jiān)控指標(biāo)就是一段特定邏輯,可以說是監(jiān)督系統(tǒng)的邏輯單位,除了少數(shù)指標(biāo)需要進(jìn)行特別復(fù)雜的公式計(jì)算外,其他大部分指標(biāo)都是根據(jù)各種限定、各種條件從依賴數(shù)據(jù)中抓取所需數(shù)據(jù)再進(jìn)行簡(jiǎn)單的業(yè)務(wù)邏輯處理,其本身的復(fù)雜度在于從紛繁復(fù)雜的各類數(shù)據(jù)中按照不同層次、不同角度、不同維度去過濾指標(biāo)業(yè)務(wù)處理范圍的數(shù)據(jù)。

      通過對(duì)托管投資監(jiān)督行業(yè)大量真實(shí)的監(jiān)控指標(biāo)的系統(tǒng)分析,在對(duì)托管投資監(jiān)督的監(jiān)控主體和監(jiān)控指標(biāo)都做了分門別類后定義了覆蓋投資監(jiān)督領(lǐng)域的兩大類共個(gè)26因子,具體如下表1:

      表1

      自定義指標(biāo)的關(guān)鍵在于把指標(biāo)的業(yè)務(wù)限定轉(zhuǎn)換為SQL中的限定條件(包括連接表和子查詢等)從數(shù)據(jù)庫中獲取所需數(shù)據(jù),然后參與簡(jiǎn)單的加減乘除公式計(jì)算。因此,從設(shè)計(jì)角度,本發(fā)明提供如下概念:

      (1)預(yù)定義的基礎(chǔ)因子:每個(gè)由業(yè)務(wù)定義出來的因子都能夠根據(jù)證券、所屬資產(chǎn)、日期等特性準(zhǔn)確定義并獲取某一個(gè)值或者進(jìn)一步按照某個(gè)條件分組的一組值,當(dāng)轉(zhuǎn)換為SQL時(shí),因子數(shù)據(jù)來自的這個(gè)表或視圖稱之為因子主表。

      (2)因子屬性:對(duì)于每一個(gè)因子,可以從不同層面、角度和維度去限定,這其中 的每一個(gè)限定就稱為一個(gè)屬性,當(dāng)轉(zhuǎn)換為因子的取數(shù)SQL時(shí),這些屬性對(duì)應(yīng)where條件,如果這些限定條件來自于因子主表之外的表,還得指定屬性限定表與因子主表之間的連接條件。

      根據(jù)上述原理,本發(fā)明具體提供一種多維投資指標(biāo)監(jiān)督方法,請(qǐng)參考圖2所示,所述方法包含:S201獲取指標(biāo)涉及的因子,根據(jù)所述因子匹配指標(biāo)計(jì)算公式并配置所述因子的限定屬性;S202根據(jù)指標(biāo)定義保存的配置信息、因子數(shù)值類型和限定屬性生成指標(biāo)計(jì)算公式中每個(gè)因子的取數(shù)SQL;S203執(zhí)行指標(biāo)的各取數(shù)SQL,將獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述獲取指標(biāo)涉及的因子之前還包含:根據(jù)托管投資監(jiān)督的監(jiān)控主體和監(jiān)控指標(biāo)建立所述因子。

      將上述實(shí)施例運(yùn)用到實(shí)際工作中,可參考圖3所示,用戶通過界面選擇指標(biāo)涉及的因子并設(shè)置成公式,配置各因子的限定屬性;SQL生成模塊根據(jù)指標(biāo)定義保存的配置信息、因子數(shù)值類型配置、屬性配置來生成指標(biāo)計(jì)算公式中每個(gè)因子的取數(shù)SQL;指標(biāo)計(jì)算模塊按指標(biāo)建立線程池,對(duì)各指標(biāo)的SQL進(jìn)行執(zhí)行并將結(jié)果批量記錄數(shù)據(jù)庫。相比與傳統(tǒng)處理模式,自定義指標(biāo)處理有以下優(yōu)勢(shì):

      (1)指標(biāo)類別層次清晰,搜索和使用都很方便;

      (2)在限定的因子及其屬性范圍內(nèi),可以自由定義指標(biāo);

      (3)監(jiān)控指標(biāo)中占比最大的一類通過自定義實(shí)現(xiàn),減少了開發(fā)量,在一定程度上提高了指標(biāo)邏輯的復(fù)用性;

      (4)自定義指標(biāo)中因子的取數(shù)SQL按照統(tǒng)一的因子數(shù)值類型配置和因子屬性配置生成,格式規(guī)范,利于調(diào)優(yōu);

      (5)自定義指標(biāo)可以在不修改代碼的基礎(chǔ)上,通過擴(kuò)充更多因子或因子的更多屬性來支持定義更多的指標(biāo);

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)還包含:將存儲(chǔ)的計(jì)算結(jié)果與預(yù)定閥值作比較,根據(jù)比較結(jié)果判斷所述指標(biāo)是否合規(guī)。其中所述預(yù)定閥值為根據(jù)當(dāng)前環(huán)境的法律法規(guī)或其他給定指標(biāo)的內(nèi)容確定的指標(biāo)合規(guī)值,例如某項(xiàng)標(biāo)準(zhǔn)要求指標(biāo)不得高于10,那么閥值就設(shè)置為10,當(dāng)前指標(biāo)小于或等于10時(shí)為合規(guī),反之違規(guī)。

      根據(jù)對(duì)投資指標(biāo)范圍的分析,設(shè)計(jì)了指標(biāo)分類、指標(biāo)代碼、指標(biāo)名稱、指標(biāo)描述、 適用監(jiān)控主體、公式、因子及屬性、分組條件、計(jì)算精度等維度,來定義一個(gè)完整的指標(biāo),并研制符合設(shè)計(jì)標(biāo)準(zhǔn)的設(shè)置畫面將指標(biāo)定義后續(xù)各模塊需要使用的信息保存下來供生成SQL模塊調(diào)用。

      在上述多維投資指標(biāo)監(jiān)督方法的一實(shí)施例中,所述根據(jù)指標(biāo)定義保存的配置信息、因子數(shù)值類型和限定屬性生成指標(biāo)計(jì)算公式中每個(gè)因子的取數(shù)SQL包含:根據(jù)因子的數(shù)值類型,獲取主SQL;根據(jù)限定屬性,獲得拼接JOIN的配置,將所述JOIN的配置代入所述主SQL中;根據(jù)限定屬性,替換WHERE信息中的控制符和控制值,將替換后的WHERE信息代入所述主SQL中;根據(jù)數(shù)值類型和限定屬性,替換所述主SQL中公共變量。

      將上述實(shí)施例運(yùn)用到實(shí)際工作中,可如下操作,請(qǐng)參考圖4所示,生成SQL模塊根據(jù)指標(biāo)定義保存的配置信息、因子數(shù)值類型配置、屬性配置來生成指標(biāo)計(jì)算公式并按照屬性配置中的連接條件去join各屬性限定表,根據(jù)定義的各屬性值去構(gòu)造where條件,對(duì)于SQL中包含的一些表變量,根據(jù)映射配置替換成對(duì)應(yīng)的一段SQL邏輯,如果有分組最后再處理分組。具體包括集中監(jiān)控SQL、實(shí)時(shí)預(yù)測(cè)SQL、相關(guān)性檢測(cè)SQL、交易明細(xì)SQL、持倉明細(xì)SQL,這些SQL都屬于結(jié)構(gòu)完整的SQL,只有一些占位參數(shù)需要在指標(biāo)真正計(jì)算時(shí)進(jìn)行替換。其中,圖3中指標(biāo)SQL生成流程具體如下:

      拼接主SQL:根據(jù)因子的數(shù)值類型設(shè)置,獲取到對(duì)應(yīng)的數(shù)值類型配置,獲取主SQL,作為SQL的開始。后面迭代取出因子的所有屬性,重復(fù)拼接JOIN和WHERE的邏輯。

      拼接JOIN部分:針對(duì)一個(gè)屬性,獲取屬性的設(shè)置,根據(jù)設(shè)置,獲取到對(duì)應(yīng)的屬性配置,獲取JOIN的配置,并添加到已有的SQL上。如果原有的SQL已經(jīng)JOIN過該表,那么跳過該邏輯。

      拼接WHERE部分:獲取屬性配置的WHERE配置,并根據(jù)屬性的設(shè)置替換WHERE信息中的控制符和控制值,替換完成后添加到已有SQL上。

      替換SQL變量:在數(shù)值類型和屬性的配置中,有很多邏輯是公共的,系統(tǒng)把這些公共的邏輯封裝成變量(見附件變量配置),這里需要把這些變量替換為真正的SQL。

      處理分組條件:針對(duì)事后監(jiān)控的集中監(jiān)控SQL,需要在SQL的最后根據(jù)分組條 件加上GROUP語句。針對(duì)事前監(jiān)控的持倉SQL和交易SQL,需要在SELECT后面加上分組字段列,在最后加上當(dāng)前交易所屬的分組條件。

      在本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法中,一可選實(shí)施例包括,所述執(zhí)行指標(biāo)的各取數(shù)SQL,將獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)包含:如果是事后監(jiān)控,獲取取數(shù)SQL中的變量,用獲取的指標(biāo)中的值替換變量,執(zhí)行所述取數(shù)SQL,獲取執(zhí)行結(jié)果;將所述執(zhí)行結(jié)果代入指標(biāo)計(jì)算公式中計(jì)算,得到指標(biāo)的計(jì)算結(jié)果;將存儲(chǔ)的計(jì)算結(jié)果與預(yù)定閥值作比較,根據(jù)比較結(jié)果判斷所述指標(biāo)是否合規(guī),并將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果。

      在本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法中,一可選實(shí)施例包括,所述執(zhí)行指標(biāo)的各取數(shù)SQL,將獲得的執(zhí)行結(jié)果代入所述計(jì)算公式中得到計(jì)算結(jié)果后存儲(chǔ)包含:如果是事前監(jiān)控,獲取因子的相關(guān)性檢測(cè)SQL,用獲取的指標(biāo)中的值代入所述檢測(cè)SQL中,執(zhí)行所述檢測(cè)SQL,如果有結(jié)果表示交易和指標(biāo)相關(guān),指標(biāo)需要運(yùn)算,否則指標(biāo)不需要運(yùn)算;如果相關(guān)性檢測(cè)通過,將指標(biāo)中的值代入取數(shù)SQL中,執(zhí)行所述取數(shù)SQL,獲取執(zhí)行結(jié)果;將所述執(zhí)行結(jié)果代入指標(biāo)計(jì)算公式中計(jì)算,得到指標(biāo)的計(jì)算結(jié)果;將存儲(chǔ)的計(jì)算結(jié)果與預(yù)定閥值作比較,根據(jù)比較結(jié)果判斷所述指標(biāo)是否合規(guī),并將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果。

      將上述實(shí)施例運(yùn)用到實(shí)際工作中,具體可如下操作:當(dāng)指標(biāo)計(jì)算模塊在接到某個(gè)監(jiān)控主體某一天的集中監(jiān)控任務(wù)或某筆交易的實(shí)時(shí)預(yù)測(cè)任務(wù)后,構(gòu)造線程池根據(jù)監(jiān)控主體和日期找到該主體關(guān)聯(lián)的有效指標(biāo)集合封裝一個(gè)公用的請(qǐng)求對(duì)象,對(duì)每個(gè)指標(biāo)都構(gòu)造一個(gè)子任務(wù)并傳入請(qǐng)求對(duì)象放入線程池,指標(biāo)子任務(wù)線程取出該指標(biāo)各因子的SQL,用請(qǐng)求對(duì)象中的屬性替換SQL中的占位參數(shù)然后執(zhí)行SQL,把不同因子SQL執(zhí)行出來的結(jié)果代入指標(biāo)公式進(jìn)行合并計(jì)算得到監(jiān)控結(jié)果,與閥值比較,做監(jiān)控特性處理后把最終結(jié)果放入緩存。上述實(shí)施例中具體流程可參考圖5所示,其中相關(guān)流程具體如下:

      指標(biāo)加載:在接收到計(jì)算請(qǐng)求后,根據(jù)請(qǐng)求的信息獲取需要計(jì)算的指標(biāo),從數(shù)據(jù)庫獲取指標(biāo)相關(guān)數(shù)據(jù),包括因子、監(jiān)控特性、閥值等相關(guān)數(shù)據(jù),封裝成相關(guān)對(duì)象。

      請(qǐng)求對(duì)象封裝:針對(duì)每個(gè)指標(biāo),把請(qǐng)求的相關(guān)信息封裝起來,構(gòu)成一個(gè)請(qǐng)求對(duì)象。例如組合代碼、證券代碼、監(jiān)控日期等。

      指標(biāo)計(jì)算:針對(duì)每個(gè)指標(biāo)對(duì)象,獲取出所屬的所有因子。

      因子計(jì)算:如果是事后監(jiān)控,獲取因子的集中監(jiān)控的SQL,并獲取SQL中的變量,用請(qǐng)求對(duì)象中的值替換變量,然后執(zhí)行SQL,獲取結(jié)果;如果指標(biāo)不分組,最后得到的是一個(gè)數(shù)值;如果是分組,得到的是一個(gè)key為分組值,value是結(jié)果數(shù)據(jù)的一個(gè)MAP對(duì)象。如果是事前監(jiān)控,先獲取因子的相關(guān)性檢測(cè)SQL,并把請(qǐng)求對(duì)象中的值代入SQL中,執(zhí)行SQL,如果有結(jié)果表示交易和指標(biāo)相關(guān),指標(biāo)需要運(yùn)算,否則指標(biāo)不需要運(yùn)算;如果相關(guān)性檢測(cè)通過,那么把請(qǐng)求對(duì)象中的值代入持倉SQL和交易SQL中,執(zhí)行SQL,獲取的結(jié)果封裝成和事后監(jiān)控一樣的結(jié)構(gòu)。

      因子合并:把因子的結(jié)果按照指標(biāo)定義中公式的操作符進(jìn)行合并,得到指標(biāo)的結(jié)果。如果需要分組,那么每個(gè)分組進(jìn)行一次運(yùn)算,最后有多條結(jié)果。

      閥值比較:得到指標(biāo)的結(jié)果或結(jié)果集后,調(diào)用指標(biāo)的閥值對(duì)象,調(diào)用閥值對(duì)象的比較方法,得到指標(biāo)的違規(guī)狀態(tài),并寫入指標(biāo)的監(jiān)控結(jié)果。

      監(jiān)控特性處理:把指標(biāo)的結(jié)果代入指標(biāo)的監(jiān)控特性處理方法,得到指標(biāo)的監(jiān)控特性信息,例如聯(lián)系違規(guī)天數(shù)、主被動(dòng)等信息,并把這些信息寫入指標(biāo)的監(jiān)控結(jié)果。

      結(jié)果緩存:在每個(gè)指標(biāo)計(jì)算完成后,把指標(biāo)的結(jié)果寫入結(jié)果緩存。

      在本發(fā)明所提供的多維投資指標(biāo)監(jiān)督方法中,一可選實(shí)施例包括,所述將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果包含:根據(jù)所述計(jì)算結(jié)果,將任務(wù)號(hào)寫入一個(gè)阻塞隊(duì)列;根據(jù)所述任務(wù)號(hào),取出結(jié)存儲(chǔ)的監(jiān)控結(jié)果;根據(jù)所述監(jiān)控結(jié)果信息,賦值給所述監(jiān)控結(jié)果批次,同時(shí)刪除上一批次的監(jiān)控結(jié)果;將結(jié)果配置表與所述指標(biāo)結(jié)果匹配,獲得結(jié)果寫入的結(jié)果表字段值;將所述監(jiān)控結(jié)果存儲(chǔ)入數(shù)據(jù)庫。

      本發(fā)明一可選實(shí)施例包括,所述將所述合規(guī)情況寫入指標(biāo)的監(jiān)控結(jié)果包含:根據(jù)所述計(jì)算結(jié)果,將任務(wù)號(hào)寫入一個(gè)阻塞隊(duì)列;根據(jù)所述任務(wù)號(hào),取出結(jié)存儲(chǔ)的監(jiān)控結(jié)果;根據(jù)所述監(jiān)控結(jié)果信息,賦值給所述監(jiān)控結(jié)果批次,同時(shí)刪除上一批次的監(jiān)控結(jié)果;將結(jié)果配置表與所述指標(biāo)結(jié)果匹配,獲得結(jié)果寫入的結(jié)果表字段值;判斷所述監(jiān)控結(jié)果對(duì)應(yīng)的指標(biāo)是否有共同賬號(hào)的交易,當(dāng)所有共同賬號(hào)的交易都計(jì)算后,將所述共同帳號(hào)的監(jiān)控結(jié)果與所述指標(biāo)的監(jiān)控結(jié)果合并后存儲(chǔ)入數(shù)據(jù)庫。

      將上述實(shí)施例運(yùn)用到實(shí)際工作中,具體可如下操作:為提高處理效率,采用批量入庫的方式提供系統(tǒng)的并行性能。在指標(biāo)計(jì)算請(qǐng)求完成后,會(huì)把任務(wù)的任務(wù)號(hào)寫入一個(gè)阻塞隊(duì)列,同時(shí)會(huì)把任務(wù)號(hào)作為KEY,把運(yùn)算結(jié)果作為VALUE放入一個(gè)線程安全的MAP對(duì)象。批量將指標(biāo)運(yùn)算結(jié)果保存到數(shù)據(jù)庫。上述實(shí)施例中具體流程可參考圖 6所示,其中相關(guān)流程具體如下:

      掃描未完成任務(wù)隊(duì)列:指標(biāo)計(jì)算請(qǐng)求完成后,會(huì)把任務(wù)的任務(wù)號(hào)寫入一個(gè)阻塞隊(duì)列。系統(tǒng)有一個(gè)掃描線程,一直在掃描該隊(duì)列,一旦發(fā)現(xiàn)隊(duì)列有值,取出任務(wù)號(hào)。

      根據(jù)任務(wù)號(hào)獲取結(jié)果信息:根據(jù)取出的任務(wù)號(hào),取出結(jié)果緩存MAP中的監(jiān)控結(jié)果。

      根據(jù)結(jié)果信息獲取批次號(hào):根據(jù)監(jiān)控結(jié)果信息,如果是手工,刪除最近一個(gè)批次的結(jié)果,同時(shí)賦值給本次結(jié)果批次;如果是自動(dòng)任務(wù),批次號(hào)為原有批次加1。

      獲取指標(biāo)的結(jié)果配置:每個(gè)指標(biāo)的監(jiān)控結(jié)果,除了公共的屬性,還有特殊的屬性,這些屬性是配置在指標(biāo)的結(jié)果配置表中,取出結(jié)果配置表的內(nèi)容和指標(biāo)結(jié)果匹配,決定結(jié)果寫入的結(jié)果表字段值。

      共同賬號(hào)判斷:如果是事前監(jiān)控,那么需要判斷當(dāng)前交易有否有共同賬號(hào)的交易,只有所有共同賬號(hào)的交易都計(jì)算后才能作為一個(gè)整體提交。

      結(jié)果入庫:根據(jù)上面流程生成的監(jiān)控結(jié)果,批量寫入數(shù)據(jù)庫。

      本發(fā)明在實(shí)際工作具有較好的使用效果,具體情況如下:對(duì)于指標(biāo):剩余期限超過397天的浮動(dòng)利率債券攤余成本占凈資產(chǎn)比。

      該指標(biāo)由債券、凈資產(chǎn)兩個(gè)因子計(jì)算比例,每個(gè)因子具體的取數(shù),根據(jù)其屬性配置,從相應(yīng)的表中指定相應(yīng)的限定條件來獲取,可以簡(jiǎn)單認(rèn)為最終每個(gè)因子都會(huì)生成一段取數(shù)SQL(這里不考慮指標(biāo)可能有的實(shí)時(shí)預(yù)測(cè)及與交易相關(guān)性檢測(cè)、得出最后結(jié)果所依賴的明細(xì)數(shù)據(jù)的取數(shù)SQL以及這些SQL之間的關(guān)系)。

      每個(gè)因子底層都對(duì)應(yīng)一個(gè)數(shù)值類型配置,比如上面的“債券攤余成本”,對(duì)應(yīng)如下表2的數(shù)值類型配置:

      表2

      債券因子隱含“證券大類”屬性為債券,另外還有顯式配置的“利率類型”、“債券剩余期”兩個(gè)屬性,根據(jù)屬性配置,在集中監(jiān)控主SQL后join相關(guān)表并指定連接條件,對(duì)應(yīng)上述拼接JOIN部分:

      根據(jù)設(shè)定的屬性值和屬性配置,拼接WHERE條件,比如債券大類為債券,對(duì)應(yīng)上述拼接WHERE部分:

      為提高腳本復(fù)用性,建立表映射配置替換上面SQL中的#...#標(biāo)記的表變量,對(duì)應(yīng)上述替換SQL變量:

      由于該指標(biāo)沒配置分組,所以該因子的集中監(jiān)控的SQL就完成了,其中的以:開頭的變量為占位參數(shù),需要在指標(biāo)計(jì)算時(shí)用請(qǐng)求對(duì)象中的屬性進(jìn)行替換。該因子用于實(shí)時(shí)預(yù)測(cè)的相關(guān)性檢測(cè)SQL、持倉SQL、交易SQL也是類似的邏輯。

      本發(fā)明通過上述實(shí)施例,具有以下有益效果:

      1、從設(shè)計(jì)思想上看,本發(fā)明將涉及領(lǐng)域模型出發(fā)制定領(lǐng)域概念與數(shù)據(jù)庫的映射關(guān)系,產(chǎn)生可供配置的自動(dòng)拼接SQL語句的實(shí)踐,為今后類似統(tǒng)計(jì)比較類系統(tǒng)設(shè)計(jì)上提供了可行技術(shù)方案。

      2、從技術(shù)方案上看,本發(fā)明提供使用人員自定義指標(biāo)的功能,符合投資監(jiān)督指標(biāo)的多樣性、易變性特點(diǎn),提高了技術(shù)預(yù)見性,降低了項(xiàng)目投入成本。

      3、從應(yīng)用實(shí)踐上看,本發(fā)明利用數(shù)據(jù)庫SQL的拼接運(yùn)行,規(guī)范了應(yīng)用語言,提高了應(yīng)用的正確性,高效性。

      4、從運(yùn)行效果上看,本發(fā)明依靠數(shù)據(jù)庫自身優(yōu)化能力,提高了程序運(yùn)行效率,相同工作在新方案的應(yīng)用下性能提高300%

      以上所述的具體實(shí)施例,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施例而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1