QERROR - MSG for 1b - TIME check on 17x ?? - are we getting ALL the data ???? **loose data on startup - 2k ! split into 4 files - if open after X secs - doit Fip messages - ditto redo exchgs to use pTmpo ?? bate codes - left as sigle chrs for now - but also code for multi.... All lines ended with NL All Exchs mapped to 2-4 chr Code Delay field is in always so marked as the 3rd field - in mins Each field separated by a PIPE - looks like the only chr NOT used... (Exch Code) | (STOX Code) | (delay) | (bate) (data) [opt... | (bate) (data) ] (NL) Still to do - actual data conversions.... - Use their bate codes ?? Notes stripped the market code for NYSE/AMEX/NASDAQ ;List of Exchange Codes ; * means ALL Market Centres exchange:0Ba CANa exchange:0Bf FOREX exchange:0Bm CANm exchange:0Bt CANt exchange:0D* NYSE exchange:0E* AMEX exchange:0F* NASDAQ ; ComStock Service Messages ;exchange:1B MSG exchange:13* CBOT exchange:16a SWX exchange:16h HK exchange:16t OSLO exchange:16u STKHM exchange:17d AMS exchange:17g MIL exchange:17k FRK exchange:17l LSEl exchange:17n LSEn exchange:17q MATIF exchange:17r PAR exchange:17s LSEs exchange:17u LSEu ; Timechecks exchange:1F TIME ; a - Ask bate:a ; b - Bid bate:b ; c - Correction bate:c ; f - flags bate:f ; g - Alert bate:g ; i - Incremental Volume bate:i ; m - currency bate:m ; v - Cumulative Volume bate:v ; w - Previous Day's Volume bate:w ----------- watch delay actual conversions dbl bate numbers have a comma after need to have ALL a bate/data before processing.. ipcmstk This program connects to the Comstock server, Logons on, tells the server which Exchangesand Fields are to be accessed and what needs to be stuffed on the WatchList. Occasional dump of all or certain fields of particular exchanges (called Snapshotting Financial Instruments). Incoming files are dumped into spool/2brouted for 'iproute' to decide where to send and process. Generally Magazine text file are sent to the editorial box while financial data is reprocessed and stuffed in a database. For a list of magazines available plus details of fields, exchanges etc, please refer to the Comstock documentation. That is a polite way of saying you need the book! It uses a parameter file, tables/setup/COMSTOCK, to describe what to setup : Syntax are : ; comment line exchange: bate: field-separator: default: pipe '|' snap:(name) time:(time) contract:(contract) dest:(dest) [allfields:] manual:(name) contract:(contract) fields: (optional) is a series of field names. Normally the defaults are reasonable which are : fields:CV,ED,II,MA,MD,ST,YC,CL name is used for manuals only; for snaps it is for your use. time is 4 digit, 24 hour format (ie no dots, colons etc). Not used for Manuals. contract is any valid contract. Generally this is a all stox for an exchange ("S*EX" is S for LSE, *EX meaning all stox) If more than one contract is required, use a comma to separate contract:S*EX,U*EX allfields: (optional) is to extract ALL data for each stox requested. You are NOT advised to do that too often. manual:lse contract:S*EX manual:liffe contract:L*EX ; big one of ALL data at 6am snap:lse.check time:0600 contract:S*EX allfields: snap:lse.noon time:1200 contract:S*EX Input Parameters (all optional) : -s : Comstock Server hostname default: "cmstk" -p : Comstock Server port number default: 1000 -P : Sparc port number default: 9222 -q : Snapshot NOW queue default: spool/cmstksnap -o : Output queue default: spool/2brouted -v : Print the version number and exit ----------Notes----------- --The parameter file is read once on startup. --Only if we are connected, logged on and have finished setup, will we snapshot !! --If the Comstock server logs us off - like at 2am every morning - we wait and try to reconnect automatically. --Magazines data files are sent to a DU (destination) of ComstockmagABC where ABC is the first 3 letters of the magazine. --To trigger manuals, a file with a FILENAME containing a header field of CM:(name) is stuffed in the cmstksnap queue where name is the same as the manual name. Eg: touch /fip/spool/cmstksnap/#SN:okboys#CM:lse will trigger a manual of "lse" if one exists in the parameter file. --Normal Startup sequence is as follows : 1. Connect to Comstock server 2. Logon 3. wait for Comstock system quality messages 4. Load which fields we want for our snap shots 5. Load the magazine numbers we want to sample The FIP log will show: Thu May 9 02:07:10 ipcmstk !s : Logon ok - Starting Setup Thu May 9 02:07:10 ipcmstk !z : Comstock System Message Thu May 9 02:07:10 ipcmstk !z : Comstock System Message C3 Thu May 9 02:07:10 ipcmstk !z : Status Feed Status : 0 : Ok Thu May 9 02:07:11 ipcmstk !z : Status Database Quality : 0 : all Ok Thu May 9 02:07:13 iproute !i : Comstock Comstock7679 CTL : Comstocksysmsg SYS.INFO Thu May 9 02:07:13 iproute !i : Comstock COMSTOCK7680 CTL : COMSTOCKsysmsg SYS.INFO Thu May 9 02:07:13 iproute !i : COMSTOCK COMSTOCK7681 CTL : COMSTOCKsysmsg STATUS Thu May 9 02:07:23 ipcmstk !z : Load Fields for Shares Thu May 9 02:07:23 ipcmstk !z : Command Succeeded Thu May 9 02:07:26 ipcmstk !z : Load Magazines requested Thu May 9 02:07:26 ipcmstk !z : Command Succeeded Thu May 9 02:07:28 ipcmstk !z : Setup Completed successfully --Installation On the Sparc, we need queues spool/cmstksnap for manual snaps plus tables/setup/Comstock for parameter file plus tables/route/Comstock for routings plus correct destinations in tables/sys/USERS For Magazines, check tables/xchg/Comstock2XXX For FinInst, check 'ipxcmstk' is also running / in SYSTEM On the Comstock server, change the hostname, IP address, Port number for the Server plus an entry for each Sparc - IP address and Port number. (copyright) 2017 and previous years FingerPost Ltd.