新四季網

用於向自動證券訂單執行系統傳遞參數的系統和方法

2023-06-06 01:56:56

專利名稱:用於向自動證券訂單執行系統傳遞參數的系統和方法
相關申請的交叉引用
本申請要求2005年7月11日提交的第60/698,219號美國臨時申請的優先權,其全部內容通過引用併入本文。
背景技術:
證券業的自動化程度正不斷增加。尤其快速發展的一個方面是軟體程序對證券訂單的自動執行。這些程序一般已知為「交易算法」。
這種程序將訂單信息(例如,證券標識符和數量)和用戶指定的參數選擇(例如,最大或最小的可允許執行價格和操作時間目標量)作為輸入。這些輸入共同稱為參數,其主要功能有(a)指定期望的執行目標;以及(b)在設計者規定的界限內管理程序的狀態以實現目標。作為其操作的典型部分,這些程序還處理實時數據和歷史數據。
為了使用戶能順利地實現交易算法,通常必須將這些輸入打包成具有中等到高等複雜性的消息(實際為數據結構)中。這種消息通常主要由參數集構成。
現在,許多證券訂單信息(以及大多數交易算法訂單信息)通過已知為FIX(金融信息交換)的產業協議從發送器傳送到接收器。FIX最初設計為用有限的、預定的參數集發送用於單一證券的訂單參數。當FIX的使用擴展到包括向交易算法傳送訂單時(以及其它應用,例如傳送相互配合的多個待執行的訂單),對該協議進行一定程度的擴展,以適應基本的交易算法類型。
現在,開始出現通常所說的「下一代」交易算法,其需要更廣泛更複雜的參數集。一般而言,如果不定義對FIX的專有擴展或其它專門的解決方案,這種交易算法的賣主就不能向預期的用戶(或向預期的用戶提供訂單輸入軟體的第三方賣主)提供這樣的參數集。可理解地,通常使用多個賣主提供的交易算法的預期的用戶不願意支持多種專有的協議擴展。賣主也不願意擴展協議,因為這種擴展帶來很長的傳播和認證周期。由於不適當形成的消息,這種擴展還增加了服務失敗的可能性。
同時,下一代交易算法的用戶希望利用這些算法的擴展的能力,但通常更喜歡僅指定(在界面的初始設置之後)全部參數中在訂單提交時將提供的、其選擇(或定製)的子集(動態參數),而將其它參數設置為其選擇的預定(靜態)值,並允許另一部分參數保持未指定、或具有賣主設定的默認值。提交時間(動態)值可為可選的或強制性的,並可具有或不具有默認值。用戶還可希望在初始設置之後指定用於提交時間參數的可用值的範圍。
用戶還希望能容易地調用先前存儲的定製參數集,並使用該參數集將證券訂單引導至優先的交易算法。


發明內容
一方面,本發明允許交易算法的用戶共同實現以上所述的目標,即(a)允許使用具有(任意)複雜性的交易算法,而不要求所有權協議擴展;(b)允許用戶簡單地識別並儲存一組或多組動態與靜態參數(以及相關細節,包括用戶界面布局);以及(c)允許容易地調用任意給定的預先定義的參數集並將其用於提交訂單。
另一方面,本發明包括計算機系統,其包括(a)製作工具,其可操作以使用戶能設計定製交易策略並創建界面定義;以及(b)預處理器,其可操作以接收通過標準協議傳送的定製策略訂單消息、加載用於相應的定製策略的定義、基於該定義豐富訂單消息、以及將豐富的消息傳遞到交易策略目的地。
在各種實施方式中(1)使用用於對定製交易策略和界面定義進行編碼的協議對定義進行編碼,用於傳輸和儲存;(2)標準協議為FIX協議;(3)製作工具可操作以使用戶能將一個或多個輸入參數指定為靜態參數或者動態參數;以及(4)可將動態參數進一步指定為必需的輸入或可選的輸入。
另一方面,本發明包括一種計算機執行的方法,包括(a)接收用戶改進的方法策略的定義;(b)將用於改進的方法策略的定義存儲到資料庫中;以及(c)基於該定義,結合併運用改進的方法策略。
在各種實施方式中(1)用於改進的方法策略的定義包括(a)策略名、(b)識別父類算法的數據、(c)清單、(d)定製參數定義、以及(e)定製界面定義;(2)清單列舉父類算法的參數列表,並識別哪些參數為靜態和哪些參數為動態;(3)父類算法可操作以接收FIX消息;(4)清單包括一個或多個靜態參數值以及一個或多個動態參數值;(5)以與在FIX消息中定義靜態參數的方式基本相同的方式對靜態參數值進行轉錄;以及(6)使用佔位符識別用於動態參數的傳遞值應該插入的位置。
另一方面,本發明包括存儲在計算機可讀媒介上的軟體,其可操作以使用戶通過圖形用戶界面設計定製交易策略,其中所述圖形用戶界面配置以使用戶能(1)分配待確定的靜態參數值;(2)識別待顯示的動態參數;以及(c)為動態參數設置默認值。
在各種實施方式中(1)該軟體還可操作以存儲包括父類算法名和清單的定製策略;(2)清單包括識別預先定義的靜態參數值和動態參數的數據;(3)清單進一步包括識別用於動態參數的默認參數值的數據;(4)圖形用戶界面進一步配置以允許用戶識別一個或多個基本動作、一個或多個條件動作、以及一個或多個條件;(5)清單存儲為XML字符串或FIX字符串;以及(6)軟體還可操作以存儲定製策略,所述定製策略包括定製參數定義和定製界面定義中的至少之一。
另一方面,本發明包括一種計算機系統,其包括(a)製作工具,其可操作以使用戶能設計定製交易策略和界面;(b)訂單輸入對象解釋器,其可操作以接收參數值並將這些值形成為通過標準協議傳輸的消息;以及(c)數據結構包裝器,其可操作以從訂單輸入對象解釋器接收消息,將消息形成為數據結構,並將該數據結構傳送到交易策略目的地。
另一方面,本發明包括一種計算機執行的方法,包括(a)顯示圖形用戶界面,該界面可操作以允許用戶輸入用於改進的方法策略的定義;(b)接收用戶輸入的、定義改進的方法策略的數據;以及(c)將用於改進的方法策略的定義發送到父類算法。
以上所述的特徵和實施方式不趨向於為限制性的。對附圖和詳細說明書進行審閱之後,本領域技術人員將認識到本發明的其它特徵和實施方式。



圖1示出了用於向自動證券訂單執行系統傳遞參數的優選的系統和方法的圖形表示; 圖2示出了優選的TactEx界面顯示; 圖3示出了優選的定製策略定義顯示; 圖4示出了優選的簡單的定製策略界面顯示; 圖5示出了優選的Sitter算法界面顯示; 圖6示出了可能的時間參數控制項的實施例; 圖7示出了優選的控制項類型定義; 圖8示出了定製策略界面的實施例; 圖9示出了另一個定製策略界面的實施例; 圖10示出了建立定製策略的優選方法; 圖11示出了優選的LMX CAT算法界面; 圖12示出了具有複選框的優選的CAT製作工具; 圖13示出了CAT製作工具實施例; 圖14示出了優選的標籤「Time Configuration」顯示; 圖15示出了優選的標籤「Base Action」「VWAP」顯示; 圖16示出了優選的標籤「Base Action」「TWAP」顯示; 圖17示出了優選的標籤「Base Action」「With Volume」顯示; 圖18示出了優選的標籤「Base Action」「Target Strike」顯示; 圖19示出了優選的標籤「Conditional Action」「VWAP」顯示; 圖20示出了優選的標籤「Conditional Action」「TWAP」顯示; 圖21示出了優選的標籤「Conditional Action」「With Volume」顯示; 圖22示出了優選的標籤「Conditional Action」「Target Strike」顯示; 圖23示出了優選的標籤「Conditional Action」「Fast Exec」顯示; 圖24示出了具有絕對觸發價格類型的、優選的標籤「Condition」「Price Condition」顯示; 圖24示出了具有相對觸發價格類型的、優選的標籤「Condition」「Price Condition」顯示; 圖26示出了優選的標籤「Condition」「Time Condition」顯示; 圖27示出了優選的標籤「Condition」「Size on Opposite SideCondition」顯示; 圖28示出了優選的標籤「Condition」「Bid/Ask Spread Condition」顯示; 圖29示出了優選的標籤「Condition」「Relative Return Condition」顯示; 圖30示出了優選的標籤「Condition」「Filled Size Condition」顯示;以及 圖31示出了優選的定製界面預覽顯示。

具體實施例方式 本發明優選的實施方式包括三個緊密結合的軟體應用,下面對其中的每個進行描述。
第一軟體應用(「製作工具」)允許策略設計者(其可為也可不為終端用戶) a)從賣主提供的交易算法列表中選擇基本的交易算法; b)被引導通過選擇過程選擇哪些參數將為動態和哪些參數將為靜態; c)為靜態參數指定值; d)為動態參數指定默認值和允許範圍;以及 f)將以上元素(共同為「訂單輸入對象」)與名稱相關聯,並將該對象存儲到適當的資料庫中。
訂單輸入時,通過第二軟體應用(「定製訂單輸入對象解釋器」),存儲在資料庫中的對象將為可讀並可解釋的。第二應用軟體的工作是 a)呈現與該對象相關聯的界面; b)存儲用戶隨後輸入到該界面中的動態參數值;以及 c)將這些值形成到任意長度的消息中,該消息可通過FIX協議(通過普遍可適用的擴展對該協議進行修改之後的協議,下文中將在標題為「算法交易擴展」的部分介紹)傳送到服務供應商站點的第三軟體應用。
第三軟體應用(「FIX包裝程序」)(或者更通常地稱為「數據結構包裝程序」)的功能是接收增強的FIX消息(可能地將其與從相關資料庫中讀取的其它信息結合),將其形成有效的數據結構,並將該結構傳送到最後的交易策略目的地。
圖1示出了本發明一個實施方式中的元素是如何共同工作的。
本發明的組件的特徵先前已基於獨立的基礎在本領域中使用。例如,之前已經使用了豐富證券訂單的方法,通過查找(存儲在資料庫中的)靜態信息並將其附著於證券訂單,而將該方法指定用於交易算法。類似地,已使用靜態的、不可定製的界面來設置最終傳遞到目標交易算法的參數值。然而,這些配置是靜態的,並且不能解決以下共同的問題(a)動態地創建並運用複雜的新的交易算法;(b)使這些算法的界面容易地根據個體需要(包括風險管理)和終端用戶的偏好而設置;以及(c)不要求對產業標準協議(即,FIX)經常進行所有權擴展。
本發明產生的有益效果共同地擴展了交易算法的性能,並充分減少了使新的交易算法概念進入市場所花費的時間。
交易算法是根據預定的指令集自動執行訂單的引擎。交易算法的實施例是由Lehman Brothers使用的算法,其中包括VWAP、TargetStrike、CAT和TactEx算法。儘管每種算法都具有具體的目的和交易方式,但是每種算法都允許用戶指定某些輸入參數,以進一步限定該算法應如何對具體的訂單進行交易。這種輸入參數的實例包括開始和結束時間、數量(volume)約束條件、緊急級別等。這些參數允許靈活地使用單一的交易算法覆蓋大量的不同應用。
在某些情況下,交易算法向用戶提供大量的參數選擇,從而可期望使用戶或開發者能基於整個算法創建或存儲改進的變體。這種處理主要包括兩個步驟(1)「確定(nail down)」(即,預先定義並存儲)可用參數的子集;以及然後(2)向終端用戶呈現簡化界面,該界面允許用戶輸入步驟(1)中未確定的其餘參數。
定製策略與「父類」交易算法(其作為定製策略的基礎)相關聯,並由用於父類算法的預定參數設置的子集和用於標識在之後需要指定的任何其它參數的一組佔位符構成。
下面用簡單的實施例進行解釋。圖2示出了TactEx交易算法的完整界面。大約具有10組不同的參數可選擇用於對TactEx交易算法進行配置以執行不同的交易類型。
圖3示出了定製的TactEx策略定義的實施例。在此情況下,定製的策略已預先定義了大量參數。限制價格(limit price)為「2 cents behindprimary(比原始落後2分)」,顯示大小(display size)為500股,動作之間時間(time between actions)為30秒,並且已開通用於顯示大小和動作之間時間的隨機化選擇。應該注意到,通過將不做設定的參數去掉,已隱含地對這些參數進行了指定。也就是說,已定義了定製策略,以去掉固定證券價格(Pegging)和轉換為主動(Convert toAggressive)特徵。
問題在於定義這些參數設定一次(定製策略),然後就允許終端用於使用該策略,而不用重新輸入參數設定或者甚至不用看見完整的TactEx界面。相反,可向用戶呈現簡化的界面,其中僅向終端用戶示出TactEx參數的子集。或者,沒有TactEx算法需要的缺少的參數值,終端用戶則可完全繞過該界面並向定製策略直接提交訂單。
將兩類定製策略區分開來是重要的,其主要差別是該策略是否允許終端用戶在提交訂單時指定附加參數。當向終端用戶提供允許用戶指定附加參數的定製界面時,使用改進的方法。當全部需要的參數都預先定義並且用戶可不使用界面就向定製策略直接發送訂單時,則使用基本的方法。
靜態參數是預先定義並且在發送訂單時不能修改的參數。動態參數是在向定製策略提交訂單時可由終端用戶指定的參數。
在基本的方法中,全部需要的參數都是靜態的,而不具有動態參數。設計者簡單地對新的定製策略命名(稱為「被動的(Passive)」),將該策略存儲到資料庫中,並對系統進行配置,以通過自動加載存儲的參數設置並將這些設置傳遞到父類算法,對屬於策略名為「Passive」的任何輸入訂單進行處理。不向終端用戶提供任何界面。用戶簡單地發送標記有定製策略名的訂單。通常,定製策略表現為用戶交易工作站上的路由選擇菜單中的目的地。
在改進的方法中,某些但非全部需要的參數是靜態的,並且終端用戶能使用定製界面或通過某些電子協議設置動態參數的短列表。回到圖3所示的實施例,設計者可希望允許終端用戶在每次向定製策略發送訂單時修改限制價格參數。這一點可由設計者創建簡單的界面(見圖4)實現。
應該注意到,可通過提供集成有終端用戶交易工作站的定製圖形界面、或通過簡單地向終端用戶提供說明並允許終端用戶創建其自己的界面或甚至通過編程設置所需的參數,而實現改進的方法。
定義改進的方法策略不僅包括預先定義靜態參數(和基本的方法中一樣),還包括定義圖形界面和/或電子協議,用戶可通過該圖形界面和/或電子協議設置動態參數。必須對每個動態參數進行定義,並將其映射到訂單欄位,以使參數可被電子地傳遞。如果將向終端用戶呈現定製界面,則還需定義布局、欄位標籤、欄位類型和默認值。
不管使用哪種方法,都具有一些幕後的工作處理輸入的定製策略訂單,加載適當的參數設置,以及將訂單轉發至父類交易算法。預處理器是執行這一任務的模塊,其將簡化的定製策略訂單轉化為複雜的全面指定的父類算法訂單。這種轉化過程可在父類算法的上遊進行(不用知道定製策略定義或者常規的和定製的策略訂單之間的區別)。對於改進的方法策略,預處理器必須能分析輸入的動態參數值,並能將這些值併入父類算法訂單中。
本部分的剩餘部分解釋執行新的定製策略所需的步驟和組件,如圖10所示。
步驟1使用製作工具建立策略 製作工具是一種交互式圖形環境,其用於設計定製策略並用於控制定製策略的界面。用戶優選地具有這樣的圖形界面,其可顯示用於「父類」交易算法的輸入參數的完整超集(superset)。在下面的製作工具概述部分,對優選的製作工具的功能性和結構進行更詳細的描述。
對於每個參數,製作工具向策略設計者提出三個選項 (1)將其指定為靜態參數,並確定(預先定義)期望的參數值; (2)將其指定為動態參數,並通過定製界面或某種電子協議將其作為需要的輸入顯示給終端用戶;或 (3)將其指定為動態參數,並通過定製界面或某種電子協議將其作為可選的輸入顯示給終端用戶。
對於基本的方法策略,僅選項(1)是可用的全部父類算法參數必須是靜態的。
當創建改進的方法策略時,製作工具不僅用於預先定義靜態參數,而且用於定義可將動態參數傳遞到預處理器中的協議、並且(可選地)用於建立將任何需要的或可選的動態參數顯示給用戶的定製界面。對於每個動態變量,改進的方法的設計者定義欄位類型(整數、字符串、日期、時間、百分比、實數、或枚舉)以及使界面能將變量傳遞到預處理器的唯一的參數標籤。如果設計者正在建立定製界面,則其還需要定義參數標籤、默認值、確認指示以及屏幕布局。
步驟2存儲具有定製界面的新策略 定製策略定義優選地包括以下組件 ■定製策略名(唯一的字符串標識符); ■作為定製策略的「父類」的交易算法; ■清單全部預先定義的靜態參數值和指定為動態的全部參數的枚舉集。其通常存儲為XML字符串或FIX字符串; ■定製參數定義(可選的,下文中將定義); ■定製界面定義(可選的,下文中將定義)。
對於基本的方法定製策略,僅需要定義策略名、父類算法名稱以及清單。對於改進的方法策略,必須定義定製參數定義。定製界面定義僅在策略需要定製界面時需要定義。通常,製作工具可產生全部這些組件。
清單 清單可以任何協議定義,通常以XML或FIX(金融信息交換)格式定義。優選地將清單表現為嵌入有XML的FIX消息格式。FIX(FIX協議有限公司的商標)是用於電子股票交易的產業標準通信格式(見www.fixprotocol.org)。下面給出簡單的示例性實施例 圖5示出了用於稱為「西特(Sitter)」的理想算法的界面。該策略採用6個參數。由Sitter算法界面生成以傳遞參數設置的FIX消息可為(假設終端用戶輸入圖5所示的參數值) 847 TargetStrategy=1012 168 EffectiveTime=12:12:00 126 ExpireTime=16:00:00 957 TargetStrategyParameters= 該消息具有四行,每一行的前面具有數字FIX標籤,該標籤識別該行包含的數據的類型。第一行識別算法(1012是Sitter算法的唯一數字ID)。第二和第三行示出了用於訂單的開始和結束時間。168和126是用於控制時間範圍的標準FIX標籤。
第四行(其在上述語句中分為五行)是包含一組附加參數的XML字符串。圖5所示界面的按鈕部分的四個參數全部都編碼在該XML字符串中。
如果要使用Sitter算法作為父類算法開發定製策略,清單則將看起來類似於上述的FIX消息。事實上,如果定製策略是不具有動態參數的基本方法策略,那麼,除了在清單中將第一句(TargetStrategy)略去之外,清單的其餘部分與該消息相同。這是因為基本算法的名稱和新定製算法的名稱都已包含在定製策略定義中。
改進的方法定製策略需要額外地描述將如何處理動態參數。這一點通過消息中的佔位符來完成。全部的動態參數在清單中由佔位符表示,佔位符佔用該參數值在消息中將出現的位置。每個佔位符字符串都是由豎直符號「|」包圍的參數唯一ID碼,例如|DisplaySz|。
例如,如果將顯示大小和結束時間參數指定為動態參數,並將全部其它參數指定為靜態,那麼清單將如下所示 168 EffectiveTime=09:30:00 126 ExpireTime=|EndTime| 957 TargetStrategyParameters= 在此實施例中,選擇「EndTime」和「DisplaySz」作為用於這兩個參數的唯一標識符,下一部分將對此進行解釋。
定製參數定義 定製參數定義用於定義將顯示給終端用戶的每個動態參數。對於定製參數定義,使用具有「重複組」數據結構的FIX消息格式,如下所示 847 TargetStrategy= 957 NoStrategyParameters= 958 StrategyParameterName="" 959 StrategyParameterType="" 960 StrategyparameterValue= 958 StrategyParameterName="" 959 StrategyParameterType="" 960 StrategyParameterValue= ...... 958 StrategyParameterName="" 959 StrategyParameterType="" 960 StrategyParameterValue= 每個動態參數都必須包含定義中,且具有標籤為958、959和960的全部三個定義行。
可用參數類型至少應該包括 Integer 整數 String 文本字符串 Time 時間格式(時:分:秒,24小時制) Percent 0到1的實數 Real 實數(雙精度) Boolean 真或假 Price實數(4個小數位)>0 除了此最小集,FIX協議還識別可支持的大量其它參數類型,例如數量和貨幣。在此實現中,將其略去。
對於輸入的訂單來說,在其中列出參數的精確訂單並不重要。只要提供了正確的參數ID,預處理器就將挑選出任何的差異。
應該注意到,定製參數格式具有兩個目的。主要目的在於電子地將參數傳遞到交易系統。這是通過將具有上述FIX格式的定製參數定義包含到表示訂單的FIX消息中來實現的。第二目的在於將其作為預處理器的參考點,以使得可將輸入的訂單置於正確的上下文中。在第二種情況下,忽略策略參數值「StrategyParameterValue」欄位。
定製界面定義 定製界面定義作為向定製策略提供的、用於創建定製界面的一組指令。該界面向終端用戶顯示各種動態參數、對實體(entry)進行驗證、並將參數值附加到訂單上。優選地,具有引擎來讀取定製界面定義並自動產生與指令一致的界面。作為一種選擇,計算機化的腳本可讀取定製界面定義,並自動產生可傳遞給界面開發者的界面說明書,以據此建立界面。該說明書可描述屏幕布局、欄位定義和標籤、確認、以及界面欄位到與訂單關聯的動態參數欄位的映射。最後,當然,可將定製界面定義按原樣傳遞給開發者,形成一組未加工的、可用於建立界面的需求。
定製界面定義協議非常類似於定製參數定義,但其增加了以下三個附加欄位 StrategyParameterLabel(用於參數的圖形用戶界面[GUI]標籤); StrategyParameterControl(用於GUI的控制元素類型);以及 StrategyParameterValidation(用於參數的確認指令)。
由於該定義未被設計用於電子地穿過FIX程序行,因此在定義中略去數字FIX標籤。
TargetStrategy= NoStrategyParameters= StrategyParameterName="" StrategyParameterType="" StrategyParameterValue= StrategyParameterLabel="" StrategyParameterControl="" StrategyParameterValidation="" ...... StrategyParameterName="" StrategyParameterType="" StrategyParameterValue= StrategyParameterLabel="" StrategyParameterControl="" StrategyParameterValidation="" 對於任何的定製策略,在定製參數定義中定義的參數和定製界面定義中定製的參數之間優選地具有精確的對應。每個定義中的參數數量是相同的,並且策略參數名「StrategyParameterName」和策略參數類型「StrategyParameterType」設置精確匹配。然而,參數的順序不必相同。
合法的參數類型與上文中在定製參數定義部分列出的相同。策略參數標籤「StrategyParameterLabel」定義將在GUI上的欄位旁顯示的標籤,其可採用多達40個字符的任何字符串值。策略參數值「StrategyParameterValue」值定義將在界面上顯示的默認值。如果終端用戶不改變默認值,界面則需要自動將默認值與其它訂單參數一起傳遞。將「StrategyParameterValue」保持空白將指示界面不顯示任何默認值。
「StrategyParameterControl」向設計者提供了使用什麼類型的界面控制項在界面上表示選項的選項。例如,對於時間(Time)類型的參數,可在界面上設有多個可能的控制項,如圖6所示。
為了簡單起見,可如圖7所示定義控制項類型。
這種格式的擴展可包括界面布局(參數組、並行參數、間隔等)上的附加控制項類型(例如,滑動控制項(slider)、多次控制項(more timecontrol)等)和附加控制項。
重要的是,應該注意到,當創建並存儲了定製界面定義時,僅建立了界面定義,而沒有建立完整功能的用戶界面。為了使用該界面,要麼將該定義作為說明書提供給界面開發者,要麼基於界面定義創建自動生成完整功能界面的常規工具。
欄位「StrategyParameterValidation」提供每個動態參數的確認指令。這些指令將包含在界面設計中。可使用字符串格式。用於進行確認的方法依賴於參數類型(即,StrategyParameterType) 全部參數類型 ■如果沒有將執行的確認,則設置 StrategyParameterValidation=""(空字符串)。
■如果在確認字符串中的任意位置出現了\#序列,則將參數識別為不能為空的欄位;必須為其指定合法值。
字符串類型參數 ■使用|(豎直符號)字符將合法值列舉為定界符。
■如果確認字符串中的任意位置出現了\∧字符序列,則忽略(大寫/小寫)格式。
■例如StrategyParameterValidation="\∧red|blue|green|black"。
整數/實數/百分比/價格類型的參數 ■使用StrategyParameterValidation字符串識別使用標準間隔記法(例如(0,1])的有效區間。
■用逗號將最小值和最大值分開。
■使用字符分別表示開區間的開始和結束。
■使用[]字符分別表示閉區間的開始和結束。
■指示的最小數和最大數應該在指定參數類型的合法單位中。例如 ●整數類型「[2,10]」 ●百分比類型「(0.0,0.99]」 ●等等 ■為了指示不具有上限或下限的情況,應該略去相關的數。
例如「
"→合法值為{1,2,3,4,5} ●StrategyparameterValidation="(1,5]"→合法值為{2,3,4,5} ●StrategyParameterValidation="
定義區間間隔,以識別開和閉的區間間隔。
■最小和最大數應該為標準時間格式例如,"
"。
■除了在確認字符串中輸入用於最小和最大數的開始和結束時間,還可使用以下代碼 ●MO正式的市場開放時間。
●MC正式的市場關閉時間。
[對每個訂單計算MO和MC其可考慮符號(美國某些交換交易基金在下午4:15關閉,也就是股票關閉之後15分鐘關閉)、市場和例外的日子(例如假期之前開放時間較短的一天)] ●NOW終端用戶接入定製界面進行訂單交易的時間。
■使用字符序列\+識別必須嚴格大於定製界面上其它時間參數的時間參數。僅在終端用戶點擊定製界面上的「Execute(執行)」按鈕時,才應用該測試。用戶在設置時間參數時不受限制。
■實施例設計者計劃在定製界面上顯示兩個時間參數開始時間(Start Time)和結束時間(End Time)。設計者希望確保兩個參數設置從現在到市場關閉之間都是合法的時間,並且用戶不能將開始時間設為大於或等於結束時間。此外,任何欄位都不能為空。用於開始時間和結束時間的確認字符串分別可為"\#[Now,MC)"和"\#\+(Now,MC]"。
布爾(Boolean)類型參數 對布爾類型的變量不進行確認。
步驟3運用策略和界面 將存儲的策略定義(策略名、清單以及定製參數定義)放置在資料庫中並可由預處理器之後在資料庫中訪問。
如果需要的話,可將定製策略定義存儲在客戶和終端用戶層,從而可根據具體的終端用戶將相同的定製策略名與不同的策略定義相關聯。這樣還使設計者能向多個客戶提供相同的定製策略,但對每個客戶存儲和加載一組不同的默認參數值。
將策略名存儲之後,必須在終端用戶的交易系統或工作站上運用該策略名。運用基本的方法策略比較簡單,因為其不需要進行界面集成或將參數翻譯到期望的協議中。通常,可將定製策略作為由其策略名識別的新的電子目的地添加到工作站中。
運用改進的方法策略則更加複雜,因為其包括集成界面或者用其它方式提供客戶可指定參數設置的機制。並且這些參數設置還必須根據每個參數定義,以正確的格式傳遞到交易系統。
如果集成了界面,該界面必須與製作工具指定的定義完全符合格式和布局、參數可用性、默認值以及參數傳遞。
當正確集成時,終端用戶將具有這樣的選擇,使用自動出現的相關界面(如果有的話)、並使用策略名和以正確格式傳遞到預處理器的任何附加參數,將訂單從其工作站路由到新的定製策略,以使用戶能設置附加參數。
步驟4處理輸入的客戶訂單 當已創建並存儲策略定義、且該策略已完全運用於終端用戶的工作站之後,用戶則能發送定製策略訂單。為了適應這些訂單,可使用預處理器組件將簡化的定製策略訂單轉化為複雜的、全面指定的父類算法訂單。
將輸入的訂單路由通過預處理器,其讀取輸入的策略名並從資料庫中加載適當的定製策略定義(可能根據終端用戶名而定)。預處理器加載策略定義,併入傳遞的參數(如果有的話),並將完整指定的訂單傳遞到父類交易算法。應該注意到,由於清單格式選擇為與用於控制父類算法的FIX格式看起來非常類似,因此預處理器僅需要將用於動態參數的任何已傳遞的值直接接合到清單中的適當位置(由佔位符限定的位置),將由此得到的FIX消息添加到訂單中,然後將訂單傳遞給父類算法。
應該注意到,嚴格說來,步驟4並不是創建新的定製策略的一部分,也就是說,當策略被建立、存儲並運用之後,沒有額外的步驟準備預處理器,以處理用於新策略的輸入訂單。
定製策略實施例 為了解釋動作框架,使用基於TactEx算法的樣本定製策略。圖8示出了該策略的定義。白色區域示出了確定的(預先確定的)參數。陰影區域示出了將通過定製界面顯示給終端用戶的參數。對於參數「Trigger Price Diff」和「Trigger Size」,已定義了將顯示在界面上的默認值。
策略定義包括5個部分 1.策略名(叫做「Peg/Step In Front」); 2.父類算法(TactEx); 3.清單; 4.定製參數定義;以及 5.定製界面定義。
清單列舉出TactEx算法參數和完整列表,並識別哪些參數已確定以及哪些參數可由終端用戶設置 已確定顯示給終端用戶 開始時間「Start Time」(=開始的限制價格「Limit Price」 日期) 結束時間「End Time」(=結束的日在分鐘之後轉換「Convert After 期) Min」 限制價格類型Limit Price Type(=觸發價格「Trigger Price」(預設2 absolute(絕對)) 分) 停止價格「Stop Price」(=空白/觸發大小「Trigger Size」(預設 不可應用)1000) 停止價格類型「Stop Price Type」 (=absolute(絕對)) 顯示大小「Display Size」(=500) 顯示大小是否是任意的「Display Size Randomized」?(=真) 動作之間的時間「Time Between Actions」(=30秒) 動作之間的時間是否是任意的 「Time Between Actions Randomized?」(=真) 轉換為主動「Convert to Aggressive?」(=真) 在秒之後轉換Convert After Sec(= 空白) 使得固定證券價格有效「Pegging Enabled?」(=真) 固定位置「Peg Anchor」(=原始) 位置偏移「Peg Offset」(=超前1 分(cent)) 觸發價格差異類型「Trigger Price Diff Type」(=分) 在FIX消息格式(略去了用於可讀性的數字FIX標籤)中,清單可如下所示 EffectiveTime=09:30:00 ExpireTime=16:00:00 RestrictionType=1 RestrictionDirection=1 RestrictionScope=1 RestrictionLimitPrice=|LimitPrice| RestrictionType=2 RestrictionMo vementType=1 RestrictionMo vement=1.0 TargetStrategyParanieters= 定製參數定義如下所示(也略去了FIX標籤) TargetStrategy="Peg/Step In Front" NoStrategyParameters=4 StrategyParameterName="LimitPrice" StrategyParameterType="Price" StrategyParameterValue= StrategyParameterName="ConvertMin" StrategyParameterType="Integer" StrategyParameterValue= StrategyParameterName="PriceTrigger" StrategyParameterType="Integer" StrategyParameterValue= StrategyParameterName="SizeTrigger" StrategyParameterType="Integer" StrategyParameterValue= 圖9示出了將顯示給客戶的定製界面。已將顯示給客戶的四個參數與標籤和任何期望的默認值一起布置在界面上。
用於該特定界面的定製界面定義如下所示 TargetStrategy="Peg/Step In Front" NoStrategyParameters=4 StrategyParameterName="LimitPrice" StrategyParameterType="Price" StrategyParameterValue="" StrategyParameterLabel="Optional Limit Price" StrategyParameterControl="Price" StrategyParameterValidation="(0.0,)" StrategyParameterName="ConvertMin" StrategyParameterType="Integer" StrategyParameterValue="" StrategyParameterLabel="Convert to Aggressive Order after(min)" StrategyParameterControl="Integer" StrategyParameterValidation="[1,]" StrategyParameterName="PriceTrigger" StrategyParameterType="Integer" StrategyParameter Value=2 StrategyParameterLabel="Peg Trigger Price Diff(cents)" StrategyParameterControl="Integer" StrategyParameterValidation="[1,]" StrategyParameterName="SizeTrigger" StrategyParameterType="Integer" StrategyParameterValue=1000 StrategyParameterLabel="Peg Trigger Size(shares)" StrategyParameterControl="Integer" StrategyParameterValidation="[1,]" 圖10示出了用於建立定製策略的優選步驟(如上所述)。
製作工具概述 本部分介紹優選的製作工具,其可用於基於CAT(條件自動交易)父類算法創建定製策略。CAT是使設計者能快速建立定製執行算法的靈活的工具箱。每個CAT策略都由四個部分構成 (a)用於訂單的全部時間範圍(Time Horizon),包括開始和結束時間; (b)基本動作(Base Action),最初用於執行訂單的算法(或其它動作); (c)條件動作(Conditional Action),在預先定義的市場條件下觸發的第二算法(或其它動作);以及 (d)條件(Condition),管理何時以及如何觸發條件動作的一組規則。
對於CAT的更多細節,見同樣在審理中的、於2006年3月22日提交的題為「用於條件自動交易的方法和系統」的第11/387,994號美國專利申請,其全部內容通過引用併入本文。儘管本文的描述集中於將CAT作為父類算法,但是本領域技術人員應該認識到,還可將此描述進行適當修改用於其它的交易算法(例如,TactEx)。
製作工具是用於設計定製策略和用於控制定製策略的界面的交互式圖形環境。製作工具界面初看起來非常類似於用於CAT算法的用戶界面(見圖11)。這兩個界面都向用戶呈現CAT算法參數的完整集,並提供使用戶能設置參數值的圖形控制。一個不同之處在於CAT算法界面是由交易者來指定參數值然後向CAT發送訂單,而定製CAT策略製作工具是由策略設計者建立定製策略以及可選地建立其定製圖形界面,交易者可存儲並重複使用建立的定製策略及其圖形界面。
CAT算法界面圍繞四個標籤(Time Config(時間配置)、Base Action(基本動作)、Condition(條件)以及Conditional Action(條件動作))組織,每個標籤對應於不同的參數。標籤「Base Action」和「ConditionalAction」上可視的參數進一步依賴於在標籤頂部使用下拉菜單指定的動作選擇。類似地,標籤「Condition」上的可用參數依賴於標籤頂部的下拉菜單中的條件類型選擇。CAT製作工具優選地具有相同的四個標籤的組織結構。
CAT算法界面允許用戶(交易者)設置參數值,並然後點擊「OK」以向CAT(或其它交易算法)發送具有全部參數值設定的訂單。CAT製作工具也允許設置參數值,但還允許用戶(或設計者)將參數分為兩組靜態的和動態的。靜態參數具有用於由定製策略處理的全部訂單的、預先定義的固定值。動態參數被顯示給終端用戶,並可對每個訂單逐一修改。如本文中在定製策略概念部分所述,對於每個可用的CAT算法參數,製作工具優選地向設計者提供三個選項 (4)將其指定為靜態參數,並確定(預先定義)期望的參數值; (5)將其指定為動態參數,並通過定製界面或某種電子協議將其作為需要的輸入顯示給終端用戶;或 (6)將其指定為動態參數,並通過定製界面或某種電子協議將其作為可選的輸入顯示給終端用戶。
在製作工具中,可定義並確定全部參數(以上的選項(1)),但僅有某些參數可顯示給交易者(選項(2)或(3))。例如,在定製策略中必須確定基本動作、條件動作或條件的選擇,這些選擇不能顯示給交易者。使用小的複選框(□)圖標(見圖12)識別可顯示的欄位。對於複選框允許的欄位,設計者具有四個選擇 1.將參數指定為靜態,並通過輸入值(或接受默認值)並將複選框保持未選中而確定某個值。
2.將參數指定為靜態,並通過將參數欄位保持空白並將複選框保持未選中而確定空白值。該算法需要某些CAT參數,對於這些參數,必須輸入值。試圖為需要的欄位確定空白值將導致錯誤的消息。
3.將參數指定為動態,並將其作為沒有默認值的定製參數顯示給終端用戶(交易者)。為此,設計者將選中複選框但將參數欄位保持為空。
4.將參數指定為靜態,並將其作為具有默認值的定製參數顯示給終端用戶(交易者)。這一點通過在欄位中輸入默認值並選中複選框來實現。當將用於策略的定製界面顯示給交易者時,參數將被顯示在界面上,而無論設計者指定了什麼默認值。
製作工具界面上具有算法界面上沒有的按鈕 預覽(Preview)-觀看到目前位置的定製界面;以及 編譯(Compile)-創建並存儲策略和界面,如果需要的欄位為空則產生錯誤消息;僅當需要的欄位被選中時(在這種情況下,定製界面將不顯示默認值),其才可為空。
圖13的實施例示出的優選CAT製作工具屏幕看起來就像設計者正在填充參數欄位。圖13示出了條件屏幕。設計者已選擇了條件「SizeOn Opposite Side(相對側中的大小)」。如上所述,必須預先定義用於定製策略的條件類型(包括基本動作類型和條件動作類型)。在此屏幕上,用戶具有7個待設置的參數。兩個參數可顯示為動態參數。
通過點擊複選框1310,設計者已選擇僅將用於該欄位的第一(SizeThreshold)參數(Size Threshold,大小閥值)指定為動態的。當複選框被選中之後,其顏色改變並且由X標示。用戶已為該參數指定默認值為1000。屏幕上的其它參數都是靜態的大小閥值類型「SizeThreshold Type」=「Shares」,範圍閥值「Range Threshold」=「1」,範圍閥值類型「Range Threshold Type」=「Cents」,範圍的位置「RangeAnchor」=中點Midpoint,一次點擊「One Shot」=「False」,以及最小循環時間「Min Cycle Time」=1分30秒。在設計者的最終定製策略中,將確定全部這些參數為固定的,並向交易者隱藏除了觸發器大小「Trigger Size「之外的其它參數,」Trigger Size「可由具有預設值為1000股份的交易者進行修改(從定製界面或者通過編程將參數值與輸入的訂單一起傳遞)。
該應用區分了必需的和可選的參數。父類算法(例如CAT)必需的參數必須由設計者提前確定,或者由用戶在提交訂單時填寫。對於必需的參數,空白值是不允許的。因此,如果在定製屏幕上將必需的變量顯示給交易者,那麼必須執行確認已防止用戶執行在其中必需參數為空的訂單。根據本文在定製策略概念部分描述的慣例,對於任何必需的參數,將\#序列用於其策略參數確定「StrategyParameterValidation」欄位,用於將該參數識別為必需的參數。
用於CAT算法的必需參數的列表 (1)所有定製CAT策略必需的參數 ■開始時間和結束時間; ■基本動作的選擇(例如,VWAP、目標打擊(Target Strike)等); ■條件的選擇(例如,價格條件);以及 ■條件動作的選擇(例如,VWAP、Target Strike等)。
(2)選擇基本動作必需的參數 (3)選擇條件必需的參數 (4)選擇條件動作必需的參數 應該注意到,如果設計者改變基本動作、條件動作或條件的選擇,則清除與先前的選擇相關的任何參數選擇。例如,在圖13中,設計者已將「Trigger Size」指定為待顯示給交易者的動態參數。如果設計者然後選擇不同的條件類型,製作工具則將在切換到新的條件屏幕之前從「Size On Opposite Side」條件屏幕中清除全部(選中的)動態參數。也就是說,僅有與選擇的基本/條件動作類型和條件類型相關的參數可作為動態參數顯示給交易者。
創作CAT策略的步驟 1.使用製作工具界面選擇將形成定製策略畫面的基本和條件動作的類型(例如,VWAP)以及條件類型(例如,價格條件(PriceCondition))。這裡,確定的(靜態參數)或顯示的(動態參數)參數集限制為在四個標籤中的每個上顯示的參數。
2.對於每個標籤,使用製作工具界面指定待確定的期望的靜態參數值。某些參數需要明確地輸入編輯框中。其它參數需要通過下拉菜單、單選按鈕或複選框選擇。
3.對於每個標籤,點擊陰影複選框,以識別將作為動態參數顯示給客戶的任何參數,並指定默認值(如果希望的話)(參見圖13的示例)。
4.點擊「Preview」按鈕,以預覽定製界面。
5.點擊「Compile」按鈕,以保存策略和界面。
使用製作工具定義定製CAT策略和界面 這部分將通過界面對屏幕逐一處理,識別哪些欄位可作為動態參數顯示給客戶。對於每個可顯示的欄位,對定製參數定義和定製界面定義中必需的元素進行定義參數ID、參數類型(整數、實數、字符串等)、在GUI(圖形用戶界面)屏幕上識別參數的標籤、GUI元件類型(編輯框、複選框等)以及對參數的任何確認指令。關於這些定義,可參照定製策略概念部分得到更多信息。
標籤「Time Configuration(時間配置) 見圖14。該標籤展示了3個可顯示的參數 應該注意到,兩組單選按鈕表示不能顯示給顧客的另外的參數選擇。例如,對於開始時間,設計者一定製造了在「Start of Day/Now」和精確時間之間選擇的單選按鈕。如果用戶選擇了「Start of Day/Now」,則確定了開始時間參數,並且精確時間參數不能顯示給交易者。另一方面,如果設計者選擇了精確時間單選按鈕,則設計者可選擇確定時間(將陰影複選框保持未選中)或將精確時間控制項顯示給交易者(具有或不具有默認值)。結束時間同樣如此。這就意味著,例如,設計者不能將精確的結束時間參數和持續時間參數同時顯示給交易者。
將MaxDuration定義為Mkt Close Time-MAX(Mkt Open Time,Time Now)(整數分鐘)。
標籤「Base Action」和「Conditional Action」 具有5個可能的基本動作和6個可能的條件動作,其每一個都在下面列出。對每個選擇分別進行討論,定義用於所選動作的可顯示參數。
基本動作「Base Actions」 條件動作「Conditional Actions」 VWAP VWAP With Volume With Volume Target StrikeTarget Strike TWAP TWAP Idle FastExec Idle 策略選擇不顯示給交易者。不創建使用戶能在「VWAP」和「WithVolume」之間選擇基本策略的固定策略。當策略被指定時,必需在前端進行選擇。此外,儘管每個動作具有其自身的一組可顯示元素,但是僅應用與所選的基本和條件動作相關的選擇。例如,如果選擇了基本動作「Target Strike」、並且該選擇顯示緊急滑動控制項、然後改變為「With Volume」節本策略,那麼,將自動清除對「Target Strike」緊急滑動控制項的複選。
「Idle」基本動作和條件動作不具有參數。
關於相對限制價格的註解 除了「Idle」之外的全部基本和條件動作都支持兩種類型的限制價格絕對的和相對的。如果選擇相對限制價格(也就是如果從基本/條件動作屏幕上的下拉菜單中選擇除了「absolute price(絕對價格)」之外的任何選擇),那麼以下相對限制價格選項可用[cents/bps][better/worse than][Arrival Price/VWAP/Open/Prev Close/ArrivalOpp Side/Arrival Same Side/Strike Price]。(例如,可能的相對限制價格可包括「cents better than VWAP」或「bps worse than Arrival OppSide」。) 如果使用相對限制價格且設計者選擇將限制價格欄位「LimitPrice」顯示給交易者,則應該將用於限制價格的GUI標籤附加於所選的相對限制價格類型。例如,如果設計者用「bps worse than ArrivalPrice」將限制價格確定為相對的,則用於限制價格的GUI標籤應為「Limit Price(bps worse than Arrival Price)」。
用於參數欄位「Limit Price」的參數類型、GUI元素類型和確認字符串依賴於價格限制類型,如下表所示 基本動作標籤VWAP 見圖15。該標籤展示了2個可顯示的參數

除了這兩個可顯示欄位之外,設計者還可從此屏幕中確定兩個其它的參數設置「Aggressive Completion」複選框和限制價格類型。(見以上關於限制價格類型和附加用於相對限制價格類型的GUI標籤的討論。)應該注意到,「Apply to Full Order」框並不是CAT算法界面的一部分。如果該框被選中,則指定的限制價格將應用於基本和條件動作(只要條件動作不是「Idle」)。
Base Action標籤TWAP 見圖16。該標籤展示2個可顯示參數
除了這兩個可顯示欄位,設計者還可從該屏幕確定兩個其它參數設置「Aggressive Completion」複選框以及限制價格類型。
標籤「Base Action」「With Volume」 見圖17。該標籤展示2個可顯示參數
標籤「Base Action」「Target Strike」 見圖18。該標籤展示3個可顯示參數
除了這3個可顯示欄位,設計者還可確定限制價格類型。如果具有有效的GUI元素類型表示滑動控制項,則應改為使用該GUI元件類型。這裡,使用了具有正整數輸入的編輯框。
標籤「Conditional Action」「VWAP」 見圖19。該標籤展示3個可顯示參數
除了這3個可顯示欄位,設計者還可從該屏幕確定3個其它參數設置時間配置單選框(「Until the End of the Order(直到訂單結束)」或「Minutes(分鐘)」)、「Aggressive Completion」複選框以及限制價格類型。如果選擇了「Until the End of the Order」單選框,那麼不能將持續時間(持續時間)(分鐘)參數顯示給交易者。
如果選中了基本動作「Apply to Full Order(應用到全部訂單)」框,那麼應該禁用條件動作標籤上的編輯框「Limit Price」(以及相關的下拉菜單和陰影複選框);然後則將基本動作限制價格應用於條件動作。
標籤「Conditional Action」「TWAP」 見圖20。該標籤展示3個可顯示參數
除了這3個可顯示欄位,設計者還可從該屏幕確定3個其它參數設置時間配置單選框(「Until the End of the Order」或「Minutes」)、「Aggressive Completion」複選框以及限制價格類型。
如果選中了基本動作「Apply to Full Order」框,那麼應該禁用條件動作標籤上的編輯框「Limit Price」(以及相關的下拉菜單和陰影複選框);然後則將基本動作限制價格應用於條件動作。
標籤「Conditional Action」「With Volume」 見圖21。該標籤展示2個可顯示參數
除了這2個可顯示欄位,設計者還可確定限制價格類型。
如果選中了基本動作「Apply to Full Order」框,那麼應該禁用條件動作標籤上的編輯框「Limit Price」(以及相關的下拉菜單和陰影複選框);然後則將基本動作限制價格應用於條件動作。
標籤「Conditional Action」「Target Strike」 見圖22。該標籤展示2個可顯示參數
除了這3個可顯示欄位,設計者還可確定限制價格類型。
如果具有有效的GUI元素類型表示滑動控制項,則應改為使用該GUI元件類型。這裡,使用了具有正整數輸入的編輯框。
如果選中了基本動作「Apply to Full Order」框,那麼應該禁用條件動作標籤上的編輯框「Limit Price」(以及相關的下拉菜單和陰影複選框);然後則將基本動作限制價格應用於條件動作。
標籤「Conditional Action」「Fast Exec」 見圖23。該標籤展示5個可顯示參數

除了這5個可顯示的欄位之外,設計者還可確定限制價格類型、掃描價格(sweep price)類型(見下文)、積極性選擇(「Limit Sweep」或「2 minutes VWAP」)以及選擇「Randomize Time/Size」。
掃描價格類型優選地採用以下格式[Midpoint/Opp Side/SameSide]from[Cents/BPS/%/% Av Sprd]。默認選項(圖23所示)是「Cents from Midpoint」。其它選擇可包括「BPS from Opp Side」或「%Av Sprd from Same Side」。如果將相關聯的編輯框顯示給客戶(上表中的「Sweep Price」),則掃描價格類型應該被逐字地用作GUI標籤。如果將掃描價格命名為美分,則參數類型和GUI元素類型為整型(Integer)且確認字符串為「(0,)」。否則,參數類型和GUI元素類型為實數且確認字符串為「(0.0,)」。
如果選擇了任意一個複選框「Link to Condition」,則將禁用該參數的編輯控制項(以及任何相關的下拉菜單和陰影複選框),並且相關聯的參數將根據條件「Size on Opposite Side」反映出參數值。參數「Number of Shares」連結於條件「Size on Opposite Side」屏幕上的第一編輯框(「Size Threshold」)。「Sweep Price」參數(以及全部相關聯的下拉菜單)連結於條件「Size on Opposite Side」屏幕上的「within」編輯框。應該注意到,輸入到條件「Size on Opposite Side」屏幕上的參數值無需顯示在「Fast Exec」屏幕上用於連結的參數;並且應該簡單地禁用用於連結的參數的編輯控制項。
如果當前選擇了除「Size on Opposite Side」之外的任何條件類型,則兩個「Link to Condition」複選框都將被禁用。此外,如果「Size onOpposite Side」條件屏幕上的「Size Threshold」當前命名為除了「shares」之外的任何命名(基於下拉菜單),則應該禁用「Fast Exec」屏幕上「Number of Shares」參數旁邊的「Link to Condition」複選框。類似地,如果不先將「Link to Condition」複選框置為未選中,那麼,當選中了任意一個「Link to Condition」複選框之後,設計者就將不能切換到不同的條件類型。最後,如果選中了「Number of Shares」參數旁邊的「Linkto Condition」複選框,那麼,設計者將不能改變「Size on Opposite Side」屏幕上「Size Threshold」的命名。
如果選中了基本動作「Apply to Full Order」框,那麼應該禁用條件動作標籤上的編輯框「Limit Price」(以及相關的下拉菜單和陰影複選框);然後則將基本動作限制價格應用於條件動作。
標籤「Condition」 標籤「Condition」提供了6個選擇,其中的每個都具有其自身一組相關的參數欄位 Conditions Price Condition(價格條件) Time Condition(時間條件) Size on Opposite Side Condition(相對側條件的大小) Bid/Ask Spread Condition(Bid/Ask展開條件) Relative Return Condition(相對返回條件) Filled Size Condition(填充的大小條件) 條件的選擇必須由設計者確定,並且在提交用於已有策略的訂單時不能將其顯示給交易者。與基本/條件動作標籤相似,當設計者選擇特定的條件時,自動地清除在任何其它條件屏幕上確定或顯示的任何參數。這樣,例如,如果設計者選擇時間條件並將持續時間標籤顯示給交易者,並且然後選擇新的條件標籤,那麼,將不會把時間條件持續時間參數顯示給交易者。
標籤「Condition」「Price Condition」 見圖24。該標籤展示了2個可顯示參數

除了這些參數,設計者還可確定大量其它參數 ■第一價格條件 ●符號(可為空以指示該符號正在被交易) ●操作符(>//<) ●觸發價格類型絕對的或相對的(見下文) ■單次複選框 ■最小周期時間(分鐘值) 應該注意到,設計者不能顯示與第二價格觸發條件相關的任何參數。可確定與第二條件相關的全部參數選擇,但不能將其顯示。
用於基本/條件動作的限制價格就是這樣,可將用於價格條件的觸發價格指定為絕對價格(例如「$38.50」)或者相對價格(例如「75bpsabove arrival price」)。圖24示出了絕對觸發價格類型。圖25示出了相對觸發價格類型。相對觸發價格類型採用以下格式[Arrival Price/VWAP/Prev Close/Open/Ord Limit Price][+/-]X[Cents/BPS]。例如,「VWAP-25Cents」。對於相對或絕對觸發價格類型,設計者都可僅向交易者顯示一個參數編輯框,其包含價格(絕對觸發價格)或者用於相對觸發價格的cents/bps的偏移數。
參照本文中題為關於相對限制價格的註解的部分,可得到關於參數類型、GUI元素類型、GUI標籤以及參數的確認。一個額外的細節是如果已輸入了用於第一價格條件的符號(而不是將其保持空白),那麼,則應該將用於觸發價格的GUI標籤置於該符號之前(例如,「SPY Trigger Price」)。此外,還需要參數「Price Trigger」,這樣確認欄位則應該以\#字符序列開始。
標籤「Condition」:「Time Condition」 見圖26。該標籤展示了1個可顯示的參數 此外,設計者還需要確定三個額外的其它變量精確時間和相對時間之間的單選按鈕選擇、精確時間(如果被選擇的話)以及相對時間類型。相對時間類型具有三個選項訂單開始時間之後的分鐘數、訂單結束之前的分鐘數、或者市場關閉之前的分鐘數。應該將相對時間類型附加於用於「Duration」的GUI標籤(例如,「Time Trigger(結束時間之前的分鐘數)」)。
標籤「Condition」「Size on Opposite Side Condition」 見圖27。該標籤展示了3個可顯示的參數
此外,設計者可定義五個其它參數(均為靜態) ■大小閥值類型Size Threshold Type(Shares,% Target Size,%Residual Size,% Typical Size) ■大小閥值單位Range Threshold Units(Cents,BPS,% TypicalSpread) ■閥值位置Range Anchor(Midpoint,Opp Side of Quote,SameSide of Quote) ■One shot複選框 ■最小循環時間Min Cycle Time(minutes) 如果Size Threshold Type為「Shares」,「Size Threshold」參數類型和GUI元素類型則都為整數,且確認字符串為「\#(0,)」。對於所有其它的「Size Threshold Type」,「Size Threshold」參數類型和GUI類型都為實數,且確認字符串為「\#(0.0,)」在任意一種情況下,GUI標籤都為「Size Threshold」。
如果「Range Threshold Units」設置為「Cents」,那麼,「RangeThreshold」參數類型和GUI元素類型為整數,且確認字符串為「\#
) ■一次複選框One shot checkbox ■最小循環時間Min Cycle Time(分鐘) 標籤「Condition」「Filled Size Condition」 見圖30。該標籤展示1個可顯示的參數
此外,設計者可定義一個其它靜態參數填充的閥值類型「FilledThreshold Type(份額「Shares」或原始訂單的百分比「% of OriginalOrder」)」。
如果填充的閥值類型「Filled Threshold Type」為「Shares」,那麼對「Filled Threshold」應用以下定義參數類型和GUI元素類型均為整數,GUI標籤為「Filled Size Threshold(Shares)」且確認字符串為「(0,)」。
如果「Filled Threshold Type」為原始訂單的百分比,那麼對「FilledThreshold」應用以下定義參數類型和GUI元素類型均為實數,GUI標籤為「Filled Size Threshold(%O rder)」且確認字符串為「(0.0,1.0)」。
預覽(Preview)按鈕 當用戶點擊「Preview」」按鈕時(例如見圖18),製作工具彈出模擬界面。儘管該界面可為靜態的(僅為屏幕快照),但其優選地為交互式的,允許設計者測試功能性和有效性。這種預覽特徵必須能支持本文定製策略概念部分的每個GUI元素類型(參見該部分得到更多細節)。預覽界面優選地顯示在分離的彈出畫面中。
如圖31所示,預覽界面優選地具有多個部分。
將界面的頂部劃分為多個畫面,以分割與CAT策略的各部分相關聯的參數 ■時間配置「Time Config」 ■限制價格「Limit Price」 ■基本動作「Base Action」 ■條件「Condition」 ■條件動作「Conditional Action」 僅示出包含至少一個動態變量的框架;而將空畫面隱藏(在這種情況下,隱藏條件動作畫面)。「Limit Price」僅在以下情況下出現(a)基本動作為「空閒(Idle)」,(b)條件動作為「Idle」,或者(c)顯示基本動作且設計者已選中應用道所有訂單「Apply to Full Order」複選框。如果應用了以上任意一個情況,則對全部訂單應用了最多一個限制價格;將該限制價格參數欄位從基本或條件動作部分移除,該限制價格在基本或條件動作部分通常位於其自己的部分。全部其它部分精確對應於CAT界面的標籤(和製作工具)。在一個標籤中顯示的任何動態參數位於界面上與該標籤關聯的部分。就標記為「Link to Condition」的Fast Exec參數來說,這些參數位於「Condition」部分並僅顯示一次。
參數欄位優選地縱向堆疊,而從不並排放置。界面上的每個參數欄位由「」字符之後的參數GUI標籤(來自定製界面定義)以及在定製界面定義中指定的GUI元素構成(複選框、整數編輯框等)。對於定製界面定義中定義有默認值的參數,將指定值顯示在GUI元素內作為默認值。如果GUI標籤太長而不能在一行內顯示,則可將其分為多行。
預覽界面的底部為兩個按鈕「OK」和「Cancel」。如果預覽界面是交互式的,那麼,點擊這兩個按鈕中的任意一個將關閉預覽窗格。
如果預覽界面是交互式的,則優選地對每個參數執行定製界面定義中的確認指令。此外,優選地執行與基本類型相關的確認(阻止用戶在整數參數欄位中輸入字符,等等)。應該注意到,在該CAT製作工具實施例中,策略設計者對界面布局不具有直接控制;界面的布局是由製作工具自動生成的。然而,本文描述的一般的製作工具功能性趨向於覆蓋該工具對界面布局提供更多控制的情況。如本領域技術人員將認識到的,可允許設計者將欄位的排序和標記中的任何元素控制為彩色模式,甚至控制例如滑動控制項和按鈕的定製界面控制項的定義。
編譯(Compile)按鈕 按下Compile按鈕(例如見圖18)使著作界面試圖存儲策略和界面。第一步是確保全部必需的參數已經顯示為動態參數或指定了合法值作為靜態參數。如果不是這樣的話,製作工具將向設計者呈現錯誤消息,使其注意未定義的參數,並且將不存儲該策略。
假設通過了測試,製作工具則將提示設計者為新的定製策略指定策略名。
然後製作工具將寫出定製策略的五個部分 (1)定製策略名= (2)父類算法=CAT(再次注意,每個父類算法都將具有各自的製作工具) (3)清單 如本文中定製策略概念部分所述,在FIX消息格式用於指定普通CAT訂單的參數設置之後,精確構造清單格式。被識別為靜態變量並在製作工具中預先定義的全部參數能夠以它們在FIX消息(表示具有相同參數設置的常規CAT訂單)中定義的方式轉錄到清單中。通過將位於兩個豎直符號「|」字符之間的參數ID(本說明書中在用於參數的表格輸入處得到)放置於參數設置通常所在的位置,將已識別為動態變量的參數轉錄到清單中。實際上,將佔位符放置於FIX消息中通常為參數設置保留的位置,從而識別預處理器應該將標記有由佔位符識別的唯一ID的、已傳遞的參數值接合的位置。這已在定製策略概念部分被廣泛覆蓋。
(4)定製參數定義 僅在策略具有至少一個顯示給終端用戶的動態參數時,將創建表示定製參數定義的FIX消息。
由設計者在製作工具中(使用提供的複選框)顯示的每個動態參數優選地具有以在定製策略概念部分定義的格式的重複組輸入。可建立如下參數輸入 ■策略參數名StrategyParameterName= ■策略參數類型StrategyParameterType= ■策略參數值StrategyParameterValue=""[該欄位僅用於輸入的訂單,其不用於策略定義] 重複列表的頂部記錄由設計者輸入的測量名和動態參數的總數。
(5)定製界面定義 定製界面定義由定製參數定義的複製開始。將設計者為每個動態參數輸入的默認設置寫在空白的StrategyParameterValue欄位上。假設所述的參數未被識別為需要的參數,這些默認值則可為空白的。然後通過加入以下三行對每個參數的重複組輸入進行擴展 ■策略參數標籤StrategyParameterLabel= ■策略參數控制StrategyParameterControl= ■策略參數確認StrategyParameterValidation= 存儲以上五個部分,著作過程就完成了。
對於另外的背景,提供了關於推薦的算法交易擴展的以下信息。
算法交易擴展 背景 目前的FIX 4.4版通過三個策略相關的標誌指出算法交易TargetStrategy(標誌847)、TargetStrategyParameters(標誌848)以及ParticipationRate(標誌849)。對於大多數公司,越來越多策略需要附加參數。幾個公司已提出多種實現,並已增加了定製標誌以支持其要求。
推薦 為了使用於策略的附加參數的傳遞標準化,並為了創建更靈活的實現來指出算法交易,提出了以下內容 1.增加重複組(下文中示出),以捕獲策略的參數。這種重複組將增加到當前具有TargetStrategy標誌(標誌847)的全部消息中。包括消息類型D、E、G、8、AB、AC、s和t。

2.忽視標誌TargetStrategyParameters(848)和ParticipationRate(849)(FIX4.4中引入的)。
3.在此方法中,指定有開始時間和結束時間以及兩個附加參數參與率「participation rate(40%)」和主動性「aggressiveness(Y)」的VWAP策略可如下所示 847(TargetStrategy)=1(VWAP) 168(EffectiveTime)=20050606-14:00:00 126(ExpireTime)=20050606-20:00:00 957(NoStrategyParameters)=2 958(StrategyParameterName)=ParticipationRate 959(StrategyParameterType)=11(Percentage) 960(StrategyParameterValue)=0.4 958(StrategyParameterName)=Aggressiveness 959(StrategyParameterType)=13(Boolean) 960(StrategyParameterValue)=Y 4.對於不能支持FIX早期版本中的定製重複組的公司/賣主,可在標誌847和848傳遞策略標誌,如下所示 ■標誌847將包含策略標識符 ■標誌848將包含一系列分號分隔的「標誌值」的對 ■在上述實施例中,將對標誌847和848如下填充 847=1 848=9572;958ParticipationRate;95911;9600.4;958Aggressiveness;95913;960Y 5.對於不能執行FIX早期版本中的標誌847、848和957-960的公司/賣主,其可使用5000系列的相應的用戶定義標誌5847、5848和5957-5960。
6.總之,下表示出了推薦的標誌和可選方案
用於StrategyParameterType(標誌959)的有效值 本發明的實施方式包括本領域技術人員將顯而易見的計算機組件和計算機執行步驟。儘管為了解釋的簡單起見,本文中並未將本發明的每個步驟或元素都作為計算機系統的一部分描述,但是本領域技術人員應該認識到,每個步驟或元素都可具有相應的計算機系統或軟體組件。因此,通過描述相應的步驟或元素而使能的這種計算機系統和/或軟體組件在本發明的範圍內。
例如,全部計算優選地通過一個或多個計算機執行。此外,法律允許範圍內的全部通知和其它通信以及全部數據傳輸優選地通過計算機網絡電子地傳送。此外,全部數據優選地存儲在一個或多個電子資料庫中。
權利要求
1.一種計算機系統,包括
製作工具,其能操作以使用戶能設計定製交易策略並創建界面定義;以及
預處理器,其能操作以接收通過標準協議傳輸的定製策略訂單消息、加載用於相應的定製策略的定義、基於所述定義豐富所述訂單消息、以及將所豐富的消息傳遞到交易策略目的地。
2.如權利要求1所述的計算機系統,其中使用用於對所述定製交易策略和界面定義進行編碼的協議對所述定義進行編碼,用於傳輸和存儲。
3.如權利要求1所述的計算機系統,其中所述標準協議是FIX協議。
4.如權利要求1所述的計算機系統,其中所述製作工具能操作以使用戶能將一個或多個輸入參數指定為靜態參數或者動態參數。
5.如權利要求4所述的計算機系統,其中將所述動態參數進一步指定為必需的參數或可選的參數。
6.一種計算機執行的方法,包括
接收用於改進的方法策略的定義;
將用於所述改進的方法策略的所述定義存儲到資料庫中;以及
基於所述定義,結合併運用所述改進的方法策略。
7.如權利要求6所述的方法,其中所述用於改進的方法策略的定義包括(a)策略名;(b)識別父類算法的數據;(c)清單;(d)定製參數定義;以及(e)定製界面定義。
8.如權利要求7所述的方法,其中所述清單列舉所述父類算法的一列參數,並識別所述參數中的哪些為靜態和哪些為動態。
9.如權利要求6所述的方法,其中所述父類算法能操作以接收FIX消息。
10.如權利要求6所述的方法,其中所述清單包括一個或多個靜態參數值以及一個或多個動態參數值。
11.如權利要求10所述的方法,其中,以與在FIX消息中對所述靜態參數值進行定義的方式基本相同的方式對所述靜態參數值進行轉錄。
12.如權利要求10所述的方法,其中使用佔位符識別用於動態參數的傳遞值應該插入的位置。
13.存儲在計算機可讀媒介上的軟體,其能操作以使用戶能通過圖形用戶界面設計定製交易策略,其中所述圖形用戶界面配置以允許所述用戶
分配待確定的靜態參數值;
識別待顯示的動態參數;以及
為所述動態參數設置默認值。
14.如權利要求13所述的軟體,其中所述軟體還能操作以存儲定製策略,所述定製策略包括
父類算法名;以及
清單。
15.如權利要求14所述的軟體,其中所述清單包括識別預先定義的靜態參數值和動態參數的數據。
16.如權利要求15所述的軟體,其中所述清單進一步包括識別用於所述動態參數的默認參數值的數據。
17.如權利要求13所述的軟體,其中所述圖形用戶界面進一步配置以允許所述用戶識別一個或多個基本動作、一個或多個條件動作、以及一個或多個條件。
18.如權利要求14所述的軟體,其中所述清單存儲為XML字符串或FIX字符串。
19.如權利要求14所述的軟體,其中所述軟體還能操作以存儲定製策略,所述定製策略包括定製參數定義和定製界面定義中的至少之一。
20.一種計算機系統,包括
製作工具,其能操作以使用戶能設計定製交易策略和界面;
訂單輸入對象解釋器,其能操作以接收參數值,並將所述值形成為通過標準協議傳輸的消息;以及
數據結構包裝器,其能操作以從所述訂單輸入對象解釋器接收所述消息,將所述消息形成為數據結構,並將所述數據結構傳送到交易策略目的地。
21.一種計算機執行的方法,包括
顯示圖形用戶界面,所述界面能操作以允許用戶輸入用於改進的方法策略的定義;
接收所述用戶輸入的、用於定義改進的方法策略的數據;以及
將用於所述改進的方法策略的所述定義發送到父類算法。
全文摘要
一方面,本發明允許交易算法的用戶共同實現以下目標,即(a)允許使用具有(任意)複雜性的交易算法,而不要求所有權協議擴展;(b)允許用戶簡單地識別並儲存一組或多組動態與靜態參數(以及相關細節,包括用戶界面布局);以及(c)允許容易地調用任意給定的預先定義的參數集並將其用於提交訂單。另一方面,本發明包括計算機系統,其包括(a)製作工具,其可操作以使用戶能設計定製交易策略並創建界面定義;以及(b)預處理器,其可操作以接收通過標準協議傳送的定製策略訂單消息、加載用於相應的定製策略的定義、基於該定義豐富訂單消息、以及將豐富的消息傳遞到交易策略目的地。
文檔編號G06Q40/00GK101501719SQ200680032569
公開日2009年8月5日 申請日期2006年7月11日 優先權日2005年7月11日
發明者桑喬伊·羅伊·喬杜裡, 託馬斯·博克, 戴維·查爾斯·庫欣, 戴維·安德魯·傑克 申請人:雷曼兄弟有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀