throbber
US007146336B2
`
`US 7,146,336 B2
`(10) Patent No:
`a2) United States Patent
`Olsen et al.
`(45) Date of Patent:
`Dec. 5, 2006
`
`
`(54) CURRENCY TRADING SYSTEM, METHODS,
`AND SOFTWARE
`
`(75)
`
`Inventors: Richard B. Olsen, Zurich (CH);
`Michael Stumm, Toronto (CA)
`.
`.
`(73) Assignee: Oanda Corporation, Toronto (CA)
`(*) Notice:
`Subject to anydisclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 673 days.
`
`6/1999 Piskiel et al. oo... 709/314
`5,916,307 A *
`3/2001 Heinzle et al. ues 705/1
`6,199,046 B1*
`11/2001 Usher et al. vues 705/37
`2001/0044771 AL*
`2001/0049651 A1* 12/2001 Selleck ..........
`ve 705/37
`
`2001/0056398 Al* 12/2001 Scheirer
`.....
`se 705/38
`
`2/2002 Szoc et al. casccsccsessesseeeee 705/39
`2002/0023053 AL*
`7/2002 Tsagarakis et al.
`........... 705/37
`2002/0087455 Al*
`2003/0115128 Al*
`6/2003 Lange et al. vv. 705/37
`2003/0159109 Al*
`8/2003 Rossmannetal. .......... 715/513
`
`(21) Appl. No.: 09/858,610
`(22)
`Filed:
`May16, 2001
`;
`—
`Prior Publication Data
`US 2002/0156718 Al
`Oct. 24, 2002
`
`(65)
`
`Related U.S. Application Data
`
`(60) Provisional application No. 60/274,174, filed on Mar.
`8 2001
`
`Int. Cl.
`(51)
`G06Q 40/00
`(2006.01)
`(52) US. Ch. w..coecoresreeeneneeeee 705/37; 705/35
`(58) Field of Classification Search 0.0.0.0... 705/35,
`oo
`. 705/37, |
`See application file for complete search history.
`References Cited
`U.S. PATENT DOCUMENTS
`
`(56)
`
`* cited by examiner
`Primary Examiner—Alain L. Bashore
`ttorney,
`ent, or
`firm—Morgan,
`(74) Attorney, Ag
`Firm—Morgan,
`LLP
`
`(57)
`
`ABSTRACT
`
`ockius
`Lewis
`Lewis & Bocki
`
`In one aspect, the present invention comprises a system for
`trading currencies over a computer network. A preferred
`embodiment comprises: (a) a server front-end; (b) at least
`one database; (c) a transaction server; (d) a rate server; (e)
`os
`a
`:
`:
`a pricing engine; (f) an interest rate manager; (g) a trade
`manager; (h) a value at risk server; (i) a margin control
`manager; (j) a trading system monitor; and (k) a hedging
`engine. In another aspect, the present invention comprises
`methods for trading currency over a computer network. In
`another aspect, the present invention comprises software for
`currency trading over a computer network.
`
`5,787,402 A *
`
`7/1998 Potter et al. oe 705/37
`
`11 Claims, 14 Drawing Sheets
`
`
` 1605
` 1610
`
` Trader opens Trading Station
` Traderclicks "Buy/Sell" button
`
`display
`1615
`Orderwindow is displayed
`
`
`
`1825
`Traderclicks
`
`“Entry” tab
`1620
`
`
`Trader decides whetherto place Market,
`
`1630
`
`Order or Entry Order
`
`
`Entry orderfiekis
`displayed
`
`‘Trader enters order
`
`
`parameters
` 1640
`
`Trader aubmits order
`
`
`1645
`
`Market price
`Order data is sent to Trading
`
` calculated
`
`System server
`
`1660
`
`
`1655
`Trading System server sends
`
`
`
`trade status data to Trading
`Trade order executed if (a) a market order and the market]
`Station application
`
`price is within limits, or (b) an entry order and market price|
`
`
`
`meets specified threshold
`
`1685
`Order acknowledgment window
`is displayed
`
`GAIN CAPITAL - EXHIBIT 1002
`
`GAIN CAPITAL - EXHIBIT 1002
`
`

`

`US 7,146,336 B2
`
`[‘sty
`
`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 1 of 14
`
`juedioipyed
`
`quedioued
`
`juedioiped
`
`Jauyed
`
`Buipes|
`
`Wwa}shS
`
`SJOAIOS
`
`ue
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 2 of 14
`
`US 7,146,336 B2
`
`
`
`
`
`ptoooSiOz.|Ogee’bazgazzogseasnfunaceb8sepen,oe
`
`suonrsoaCEQbaPsieme]ry
`Lt308dLAAUVNadtedafiVsnowS1iNnyunaLBADIL
`
`
`
`beesoseeeeeesnesnee
`
`
`
`SPURWWIOD43579)ONeUUIOD
`
`eSbleBelkas
`
`
`
`
`
`Bb/GrOZasn7yna
`
`
`
`+S¢BbbO'tasnidao
`
`Stsetere
`
`26/S€P01Adtrasn
`
`Obsbizor+aNavasn
`
`Os/Plirb*avavasn
`
`
`
`
`
`[={sun92]soasg|JeasayuyJpany)Aoueunsagrosos.+awasung
`
`cofcess.+SHON
`
`
`
`bbsGO'GELAdftrana
`
`SNINO
`
`~‘SL
`
`
`
`
`
`MODUIAJaIddiy:‘GurueAy
`
` -B66)“be299-
`bShethOlbtSO-b+OO:bLGOEL
`AVI/ASN
`8L97ZpaswfseyyerySo$0'0Z-
`
`1g'2S2'68souelegyeu©Arewuing
`
`
`
`O2/SO'LdLAdr/daO
`
`SYYOId[EJOL
`.essAng@49°75268TIQeHEAYUIBIepy
`zunovy
`
`
`
`
`
`bZ/69820dao/ana
`
`Etoe emi
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 3 of 14
`
`US 7,146,336 B2
`
`aayndwoy
`jouyu077spell
`
`swayskg
`
`JO}IUOW
`
`JG,
`
`ySas9}U]
`
`BuiBpey
`
`euibuy
`
`ulfsew
`
`NS
`
`ee
`Soot
`
`S|=eulbug
`€SI
`
`“euuonsesuel
`
`16;490135
`A)||
`
`souyied
`
`yueg
`
`eoepazy|
`
`Buipesy
`
`waysks
`
`JOPUCW
`
`ayey
`
`/49A1ag
`
`Buistid
`
`J9AI9S
`
`uajuos4
`
`UONEISHOAAo
`
`LOREISOM
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 4 of 14
`
`US 7,146,336 B2
`
`Database
`
`Servers
`
`
`
`ISP
`
`
`
`Fig.4
`
`
`
`
`Routers
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 5 of 14
`
`US 7,146,336 B2
`
`L1id0Ud
`LaXyVviN
`
`z000'0-
`
`verb’)
`
`98br'L
`
`-Stb'L
`
`Z000'0-
`
`¢s899°0
`
`ys9e'0
`
`orse'ao
`
`£598'0
`
`SONVHOxXBaaOY abueyoxain47,
`L-Gb'L(=,were]JeAB4A=|asnvwna|AousunamtTremameemreesasanebO/Z008'0
`
`-0O0s‘6270-OB8N/anNs
`
`
`
`
`asndadsozceqgOoooasnfanapoLee8Ooo001
`jesoseor||Aar7asn
`ishevrser||aHavasn
`joeszeost||avorasn
`jessrerrs||asn/dao
`
`jeozz-SUpOles301
`peszsos'o[|asnvuna
`
`
`06LOe'z6aiqereayUiBseyy
`
`ov'ezo'epasr)mbueyy
`
`00°'000'00Lsoueleg
`vo}|Aarrana
`‘ol|daorsna
`
`AaVANNSNODDY
`
`BaLvayNAAN
`
`MOpUIAyaiddy‘Guilewy:
`
`¢‘S14
`
`60/08hvO
`
`pazyo9uu04mgte
`
`ANANANP32
`yor,osUUE7)
`
`nesrAng
`
`SUOIPSOY
`
`sapesy
`
`Si9pIO
`
`AiO}S14
`
`sisheuy
`
`SMON
`
`SUUNJO4
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 6 of 14
`
`US 7,146,336 B2
`
`z000'0
`
`£000'0-
`
`26980CbbLb
`
`Stell
`
`6e98'0
`
`
`
`00000'OOL
`
`OL949'2
`
`06LOE2B
`
`
`
`aqerearyubieyy
`
`
`
`SPpOlgJFPOL
`
`
`
`pasnuibseypy
`
`sourjeg
`
`
`
`AUVAWHOSLNOODIy
`
`9“S1q
`
`000001
`
`4H3/dSN
`
`O9Zee
`
`L‘Sy
`
`
`
`
`
`8988°0Sb28'0o00s9
`
`asnsan3
`6SLcEe
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 7 of 14
`
`US 7,146,336 B2
`
`sainn[wund|waquo|| Adfeana
`
`[NOlvand|Lanuww|add[at[ws]
`LL] 21oes
`
`AHI/aSN
`
`asnvana
`
`SPTa
`
`
`
`8a3z0NoDNIAIQ
`
`PeuapunBOSEG
`
`682¢c6
`
`€02£6
`
`000002
`
`6‘S14
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 8 of 14
`
`US 7,146,336 B2
`
`
`NOILIVSNVYL[[4]AMDLBIFLN3AD3y
`vO:Sb‘O00Z‘++YO88980000SZasnvnayopeyAng+Z02¢
`
`
`
`
`
`
`BE:Zb‘0002bbPObOsr|boooooLasinrdasWOONE1b002S
`
`
`
`Zp:9b‘0002‘6POps9s8'0oo000+asnvwngyomeWyAng8S69¢
`
`
`
`
`
`€r'8b‘0002‘6PO98br'boocodorasnidaswoeWYAng6S69S
`
`
`
`£0:St‘000Z"bbPO6898'0000SzasnvangJOPEWHPS
`
`
`
`
`aWilsaLva|39d=]sainn[|aund|3dAL
`
`OQ‘Sty
`
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 9 of 14
`
`US 7,146,336 B2
`
`cc
`||£9/E0041]||PS
`Bi#OL0G'4
`26/06890
`6b#DESZG
`89/99401
`SL#SLSb'L
`Ob#SbSS'0
`
`BALVyLNIMAND
`g¥va/dsn
`
`SJHI/OSN
`
`dao/ans
`
`Adf/ana
`
`gsn/yna
`
`asn/dao
`
`Adfiasn
`
`
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 10 of 14
`
`US 7,146,336 B2
`
`20280
`
`9$48'0
`
`ZI‘Sty PPO}SE0]bEPO]EbPOLEOLOFGT
`
`
`-000Z‘G11320-a08sn/4ynN3
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 11 of 14
`
`US 7,146,336 B2
`
`'\ Market Order
`
`FORE XCHARGE
`
`SEES
`
`ACTION
`
`CURRENCY
`UNITS
`RATE
`
`v |
`
`feursusp
`{10000
`fo.s5e
`
`[Warning: Applet Window
`
`+| -|
`[o.e6s33
`J¥ Lower Limit
`+|
`.
`|
`[o.s55e
`[7 Upper Limit
`[oesz0 +| |
`grvtnntneense
`[" take Prot[+{ -|
`
`You are buying EUR
`
`and selling USD
`
`Fig. 13
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 12 of 14
`
`US 7,146,336 B2
`
` bl‘Sly
`
`
`
`
`
`
`
`OJequunujax91)
`
`
`
`MOpUIAAJa[ddy‘BuneA,
`
`
`
`“JBPIOPOHIEWpa}dsacoeJanES
`
`OSNI
`
`
`
`lapigJayeW
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 13 of 14
`
`US 7,146,336 B2
`
`peeBvdeeeeeePePn 19PIOdayuy
`
`[=asnryna
`AINAYYHNSD
`
`~ANG
`
`NOILDY
`
`oor
`
`SLINN
`
`LAxaeayey
`
`}:,-.
`
`S31vy
`
`¢]‘
`
`SI
`
`
`
`MmOpUIAAaddy‘Bue|
`
`
`
`YN]BuiAngsenora
`
`
`
`asnGunyjaspue
`
`[-=Lzss'of=fa__ozse'ofJ-REPOL|[--f+_srss'of
`sso,doisa]
`
`voHesng
`
`
`

`

`U.S. Patent
`
`Dec. 5, 2006
`
`Sheet 14 of 14
`
`US 7,146,336 B2
`
`1605
`
`1610
`
`Traderclicks "Buy/Seli" button
`
`Trader opens Trading Station
`display
`
`"Entry" tab
`
`1615
`
`Order windowis displayed
`
`1620
`
`Trader decides whetherto place Market
`
`
`Orderor Entry Order
`
`1625
`
`Traderclicks
`
`Entry
`order
`
`1630
`
`Entry orderfields
`displayed
`
`1640
`
`Trader submits order
`
`
`
`
`1645
`
`Order data is sent to Trading
`System server
`
`Market
`order
`
`1635
`
`Trader enters order
`parameters
`
`1650
`
`Market price
`calculated
`
`
`
`1660
`
`
`
`
`
`
`
`
`is displayed
`
`Fig. 16
`
`1655
`
`Trade order executed if (a) a market order and the market
`price is within limits, or (b) an entry order and market price
`meets specified threshold
`
`Trading Systern server sends
`trade status data to Trading
`Station application
`
`1685
`
`Order acknowledgmentwindow
`
`

`

`US 7,146,336 B2
`
`1
`CURRENCY TRADING SYSTEM, METHODS,
`AND SOFTWARE
`
`CROSS-REFERENCE TO RELATED
`APPLICATION
`
`This application claimspriority to U.S. provisional appli-
`cation No. 60/274,174, filed Mar. 8, 2001, and incorporates
`the entire contents thereof herein by reference.
`
`FIELD OF THE INVENTION
`
`The present invention is related to currency trading; more
`particularly, the inventionis related to trading currency over
`a computer network.
`
`BACKGROUND
`
`In a traditional on-line currency market, a trade occurs
`through three steps: (1) the trader specifies to a dealer the
`currency pair and the amount that he would to trade (but
`does not specify whether he would like to buy orsell); (2)
`the dealer specifies to the trader both a bid and an ask price
`and gives the trader several seconds to respond (the dealer
`not knowing whetherthe trader will buy, sell, or reject the
`offer); and (3) the trader either rejects the offer or specifies
`whether he is buying or selling (his response must occur
`within a time frame of a few seconds).
`But performing such a three-way handshake over the
`Internet is somewhat impractical because of Internet delays:
`the trader might not actually have a few seconds to respond
`before the dealer withdrawsthe offer. Thus, there is a need
`for a system and method of on-line currency trading that is
`based on a trading model that is superior to the three-way
`handshake described above.
`
`Another problem is that many corporations havefirewalls
`that restrict access to the corporate network, and that typi-
`cally restrict access to the Internet (and to well-known
`services such as email, the World Wide Web, etc.) from
`within the corporation. This inhibits the ability of on-line
`trading systems to access information from and transfer
`information to users behind corporate firewalls.
`
`SUMMARY
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`2
`In another embodiment, a preferred method comprises:
`(a) transmitting currency market information over a com-
`puter networkto an end user; (b) receiving a currency trade
`order from the end user, wherein the currency trade order
`comprises a threshold exchangerate; (c) calculating a mar-
`ket exchangerate for the received currency trade order; and
`(d) executing the order (1) if the market exchangerate is or
`goes abovethe threshold exchangerate and the orderis a sell
`order, and (2) if the market exchange rate is or goes below
`the threshold exchange rate and the order is a buy order.
`In a further embodiment, a preferred method comprises:
`(a) receiving currency market information over a computer
`network from a trading system server; (b) transmitting a
`currency trade order to the trading system server, wherein
`the currency trade order comprises limits within which the
`currency trade will be acceptable; and (c)
`if a market
`exchange rate is within the specified limits, receiving infor-
`mation from the trading system server indicating that the
`currency trade order was executed.
`In another embodiment, a preferred method comprises:
`(a) receiving currency market information over a computer
`network from a trading system server; (b) transmitting a
`currency trade order to the trading system server, wherein
`the currency trade order comprises a threshold exchange
`rate; and (c) if (1) the applicable market exchangerate is or
`goes abovethe threshold exchangerate and the orderis a sell
`order, or (2) the applicable market exchange rate is or
`becomes below the threshold exchangerate and the orderis
`a buy order, receiving information from the trading system
`server indicating that the currency trade order was executed.
`In another aspect, the present invention comprises soft-
`ware for currency trading over a computer network. In one
`embodiment, preferred software comprises: (a) software for
`receiving data over a computer network from a trading
`system server; (b) software for displaying a first graphical
`user interface display that: (i) displays continuously updated
`currency exchangerates in real-time based on data received
`from the trading system server; and (ii) displays action
`buttons, including a buy/sell button; (c) software for dis-
`playing, in response to a user clicking the buy/sell action
`button, a buy/sell window display that: (4) comprises trade
`order parameter fields; and (11) accepts trade order data
`entered into the trade order parameter fields by a user; and
`(d) software for transmitting said trade order data to said
`trading system server over said computer network.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The present invention overcomesthe above-described and
`other disadvantages of previous currency trading systems
`and methods. In one aspect, the present invention comprises
`a system for trading currencies over a computer network. A
`preferred embodiment comprises: (a) a server front-end; (b)
`at least one database; (c) a transaction server; (d) a rate
`server; (e) a pricing engine; (f) an interest rate manager; (g)
`a trade manager; (h) a value at risk server;
`(1) a margin
`control manager; (j) a trading system monitor; and (k) a
`hedging engine. Each of these components is described in
`detail below in the Detailed Description section.
`In another aspect, the present invention comprises meth-
`ods for trading currency over a computer network. In one
`embodiment, a preferred method comprises: (a) transmitting
`currency market information over a computer network to an
`end user; (b) receiving a currency trade order from the end
`user, wherein the currency trade order comprises limits
`within which the currencytrade will be acceptable to the end
`user; (c) calculating a market exchangerate for the currency
`trade order; and (d) executing the order if the market
`exchange rate is within the specified limits.
`
`FIG. 1 depicts parties involved in a preferred embodi-
`ment.
`
`50
`
`FIG. 2 depicts a graphical user interface of a preferred
`embodiment.
`
`FIG. 3 depicts modules of a preferred trading system
`server.
`
`FIG. 4 depicts hardware components of a preferred
`embodiment.
`
`FIG. 5 depicts a graphical user interface of a preferred
`embodiment.
`
`FIG. 6 depicts an account summary table display.
`FIG. 7 depicts an open trades table display.
`FIG. 8 depicts an open positions table display.
`FIG. 9 depicts an open orders table display.
`FIG. 10 depicts a transactions table display.
`FIG. 11 depicts a currency rates table display.
`FIG. 12 depicts a currency exchange rate graph display.
`FIG. 13 depicts a buy/sell pop-up window display.
`FIG. 14 depicts an acknowledgment window display.
`
`55
`
`60
`
`65
`
`

`

`US 7,146,336 B2
`
`3
`FIG. 15 depicts an entry order display.
`FIG. 16 depicts steps of a method of a preferred embodi-
`ment.
`
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`
`The Currency Trading System of a preferred embodiment
`(hereinafter “Trading System”) of the present
`invention
`allows traders to trade currencies over a computer network.
`Preferably, this computer network is the Internet, and the
`subsequent description herein is primarily in terms of the
`Internet. However, those skilled in the art will recognizethat
`the following description also applies to other computer
`networks. Traders interface to the system using ordinary
`Web browsers running feature-rich Java applets; they obtain
`real-time data feeds of current exchange rates,
`they can
`analyze past exchange rates using graphical tools, they can
`review their current portfolio and past trades, and they can
`place buy andsell orders in the real-time market. Businesses
`interface to the system using an API. Innovative features that
`set the Trading System apart from the competition are: (i)
`extremely low spreads onthe order of a few basis points, (11)
`the ability to trade very small amounts as low as $1, and(iii)
`24 hour a day, 7 days a week availability. This system has
`the potential to revolutionize the way currency trading is
`done and to open up currencytrading to a new, large market
`segment of investors and speculators for whom currency
`trading is not feasible today. Moreover,it allows businesses
`to address their currency exchange requirements in the most
`cost-effective and efficient way.
`A description of the preferred server infrastructure used in
`the Trading System follows. Wefirst give a brief introduc-
`tion of the system as a whole.
`The Trading System involves three components (see FIG.
`(1) traders that are distributed around the world; (2)
`1):
`Trading System servers; and (3) “Partners” consisting of the
`financial
`institution(s)
`through which real
`currency
`exchangetrades are executed, and from which real-time data
`feeds are obtained.
`
`Traders communicate with Trading System servers over a
`secure, encrypted Internet connection to review their
`accounts, to monitor currency exchange market conditions,
`or to initiate currency exchangetrades. The Trading System
`servers are preferably connected to the partners’ back-office
`systems, using direct, private lines.
`Atrader trades with the Trading System similar to the way
`she currently trades with a broker, except that the trading is
`over the Web, occurs 24 hours a day, 7 days a week, and
`allows very small trades with very low spreads. Moreover,
`an initial deposit, which may be as low as $20, can be
`charged to a credit card to get started. Alternatively, the
`trader can transfer initial funds directly to the Partner bank
`to be credited to her Trading System account.
`The end user interface to the Trading System is a Web
`page that can be displayed on any standard Java-enabled
`browser. The Web page (one version is shown in FIG. 2; a
`second, preferred version is shown in FIG. 5) depicts a
`summary of the trader’s current position, recent trading
`activities, profit/loss performance of the portfolio, and a
`graphical display of recent past performance of the curren-
`cies the trader has positions in, as well as real-time exchange
`rates.
`
`in a traditional on-line currency
`As discussed above,
`market a trade occurs through three steps:
`(1) a trader
`specifies a currency pair and an amount he would like to
`trade (and does not specify whether he would like to buy or
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`sell); (2) a dealer provides both a bid and an ask price to the
`trader and gives the trader several seconds to respond (the
`dealer does not know whether the trader will buy, sell, or
`reject the offer); and (3) the trader either rejects the offer or
`accepts the offer and specifies whether he is buying or
`selling, within the response period set by the dealer.
`In the Internet domain, this type of three-way handshake
`is problematic. The timing constraints are difficult to imple-
`ment because of frequent delays in transmission over the
`Internet. To overcome this problem, the present invention
`uses a “two-way handshake,” in which:(1) a trader specifies
`in her trade order: (a) a currency pair; (b) a desired amount
`to trade; (c) whether she wishes to buyorsell; and (option-
`ally) (d) upper and lowerlimits on an acceptable exchange
`rate; and (2) a dealer (in this case, a preferred Trading
`System) executes the trade using the most current “market
`rates” (as calculated by the system). However, the system
`only executes the order if the calculated market rate lies
`above any specified lower limit and below any specified
`upper limit. Note that this method does not require the use
`of timing constraints, and thus avoids the Internet-imple-
`mentation disadvantage of previous methods.
`In the present invention, trades can be initiated by the
`trader at the push of a button. A trading request form pops
`up with fields properly initialized so as to minimize the
`numberof keystrokes required. A trader may elect to execute
`a trade right away, in which case the buyer of a currency will
`buy at the current exchange rate market offer price. Con-
`versely, a trader can sell a currency at the current bid price.
`A range of automatic trading options is available, including
`setting bid/offer prices with a certain duration and “all-or-
`nothing”rules. Furthermore, the trader can limit her risks by
`placing stop-loss orders that are executed automatically.
`Similarly, she can lock in profits, by issuing take-profit
`orders.
`All communication between the trader’s browser and the
`
`Trading System server occurs through the Internet, prefer-
`ably using the strongest available encryption (e.g., 128 bit
`keys). Moreover, the trader must authenticate herself using
`private passwordsorcertification keys obtained from certi-
`fication authorities, such as Verisign or Entrust.
`A request for a market
`trade preferably proceeds as
`follows: the trader, at a push of a button, obtains a trade
`order ticket in a popup window on the browser with key
`fields pre-initialized (see FIG. 13). When the trade order is
`issued, again by the push of a button, a messageis sent to a
`Trading System server, where the market price is calculated
`based on such factors as market data, size of the transaction,
`time of day, the Trading System’s current exposure, and
`predictions on market direction. The trade order is executed
`using this market price. (The trader can specify limits, so
`that the trade occurs only if the price falls within these
`limits.) As such, the Trading System operates as a market
`maker. A messageis then sent backto the trader with specific
`trade details, which is displayed in a popup window (see
`FIG.14) on the trader’s browser together with a transaction
`id (for future reference). Moreover, an open orderstable (see
`FIG. 9) and current portfolio summary table (not shown) is
`updated to reflect the change.
`Alternatively, the trader can issue in a similar manner an
`entry order (see FIG. 15) that requests a trade be made when
`the currency exchange rate reaches a specified threshold.
`The trader may specify how long the entry order will be
`valid.
`
`Referring to the attached figures, a preferred embodiment
`comprises a method of trading that in turn comprises the
`following steps (see FIG. 16): At step 1605,a trader desiring
`
`

`

`US 7,146,336 B2
`
`5
`to trade opens a Trading Station display, and at step 1610
`clicks a “Buy/Sell” button 510 on the Trading Station
`display (see FIG. 5). At step 1615 an order window is
`displayed (see FIG. 13). At step 1620 the trader decides
`whether to place a market order or an entry order. If a market
`order,
`then the trader proceeds to step 1635 and enters
`desired order parameters (as shown in FIG.13). If an entry
`order, then the trader proceeds to step 1625 and clicks an
`“Entry” tab 1320 (see FIG. 13). At step 1630 entry order
`fields are displayed (see FIG. 15). Then the trader proceeds
`to step 1635 and enters desired order parameters (as shown
`in FIG. 15).
`Once order parameters are entered at step 1635, the trader
`submits the order by clicking a “Submit” button 1310 (see
`FIG. 13)
`if the order is a market order, or clicking a
`“Submit” button 1510 (see FIG. 15) if the order is an entry
`order. At step 1645 data describing the order is sent by the
`Trading Station application to a Trading System server,
`wherethe data is stored. At step 1650 a current market price
`for the currency the trader desires to purchaseis calculated.
`At step 1655 the trader’s order is executedif (a) the trader’s
`order is a market order and the calculated market price is
`within the limits set by the trader in the market order form
`at step 1635; or (b) order is an entry order and the calculated
`market price meets the threshold(s) specified in the Entry
`order form at step 1635.
`Atstep 1660 the Trading System server sendstrade status
`data to the trader’s Trading Station application. This data
`includes an indication that the order has been executed, if
`thatis the case, and at any rate includes an indication that the
`order has been received. At step 1665, the Trading Station
`application displays an order acknowledgment window (see
`FIG. 14) that displays order status information.
`Overtime, the Trading System will accumulate an imbal-
`ance in its currency portfolio and, at times, it will need to
`neutralize its risk exposure to adverse currency fluctuations.
`The Trading System Pricing Engine can influence its expo-
`sure by setting its price quotes accordingly. Moreover,it can
`close out its positions periodically or take hedging positions
`by executing larger trades through its Partners. Preferably
`the Trading System’s positions are managed based onstate-
`of-the-art
`trading models. Preferred trading models are
`described in U.S. patent application Ser. No. 09/855,633,
`filed May 14, 2001, the contents of which are incorporated
`herein by reference, as well as U.S. provisional application
`No. 60/274,174, filed Mar. 8, 2001.
`The Trading System servers preferably operate 24 hours
`a day, 7 days a week. These servers interface with the traders
`over the Internet on the one hand and onthe other hand with
`
`the Partner’s back-office operations. Using standard, state-
`of-the-art database technology, it maintains the accounts of
`all traders and executes trades issued by the traders. The
`Trading System thus plays the role of a market makerin that
`it
`internally aggregates all
`trades and only occasionally
`balancesits internalpositions by trading larger sums through
`the Partner. These larger trades are issued to the Partner in
`an automated way. The Trading System also takes hedging
`positions so as to minimizerisks on the unbalancedportions
`of the traders’ account aggregates.
`Partner’s Role
`The Partner maintains all actual funds. It is the source and
`
`target of all fund transfers to and from customers; it main-
`tains the aggregate accounts; andit executesall trades issued
`automatically by the Trading System servers. From a legal
`point of view,all funds must be maintained in money market
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`instruments. Hence, the Partner will maintain a Long and a
`Short money market fund for each currency supported.
`
`Overview of Currency Trading System Server Internal
`Design
`The Trading System server architecture is designed to be:
`(1) modular, in order to: (a) simplify development(time-
`to-market); (b) easily allow extensions and modifications;
`(c) ensure correctness and robustness, and (d) keep it main-
`tainable;
`(2) efficient, in order to provide fast response times to
`online users and minimize the computational and network-
`ing resources required to support the service;
`(3) scalable, in order to support (with suitable computing
`infrastructure) a large number of online users and high
`transaction volumes; and
`(4) fault resilient, so that any individual failure of a
`computing node or network connection does not interrupt
`service.
`
`The Trading System server software preferably runs
`exclusively on Unix platforms, and is composed of the
`following modules, each with a distinct set of responsibili-
`ties (see FIG.3):
`(1) Database (DBMS) 310. This is the heart of the server.
`It keeps track of customerprofile information, all customer
`accounts and all transactions, and ensures that atomicity,
`consistency, independence, and durability (“ACID”) prop-
`erties are maintained. The databaseis the reference point for
`all information kept by the system.
`The database is preferably a standard commercially-
`available SQL database, configured for full replication for
`reliability, availability, and improved performance. Thepre-
`ferred embodiment is based on IBM’s DB-2 product line,
`but Oracle, for example, could also easily be used.
`(2) Server Front-end 315. The server front-end 315 is
`responsible for all communication with the Web-basedcli-
`ents. It supports both persistent and non-persistent connec-
`tions to the traders. The persistent connects are used prima-
`rily for periodic (i.e., every few seconds) transmission of the
`latest currency rates so that
`the traders can update the
`currency graphs and tables in real-time. Using persistent
`connections significantly reduces protocol processing over-
`head and reduces network bandwidth requirements. Non-
`persistent connections are used for all transaction-oriented
`requests, such as orders, transaction history requests, logins,
`etc. All
`transaction-oriented communication between the
`trader browsers and the Server Front-end occurs fully
`encrypted, while rate information is transmitted in unen-
`crypted form for efficiency reasons.
`Traders preferably communicate with the server using a
`request-responsetype of protocol. The Server Front-end 315
`interprets each request
`it receives and,
`for each,
`takes
`appropriate action. For login requests, it sets up appropriate
`data structures so that all future requests can be serviced in
`the most efficient way. It also sets up encryption keys for
`secure communication, and logs the start of a new session
`with the Transaction Server. For rate requests, it returns the
`requested rates it obtains from the rate server. For orders, it
`executes the orders by issuing appropriate requests to the
`transaction server after checking the margin requirements,
`the availability of funds, and using rates as determined by
`the pricing engine. For stop-loss/take-profit and fixed-price
`orders (that may get executed in the future),
`the Trade
`Manager 365 is also informed. For each trade that gets
`executed, the Hedging Engine 340 and Margin Control 350
`modules are informed, so that they always have an up-to-
`date snapshot of the state. For transaction history,
`the
`
`

`

`US 7,146,336 B2
`
`7
`appropriate information is returned to the client after obtain-
`ing it from the Transaction Server 355.
`The Server Front-end 315 also encapsulates a standard
`Web server (a la Apache), that services other trader requests
`that entail formatted text; this includesall of the Help pages,
`large transaction history requests, and server monitoring
`information. The Server Front-end 315 also acts as a Fire-
`wall.
`
`Internally, the Server Front-end 315 is structured as a set
`of threads that service one request after another. The threads
`allow concurrent request servicing so that many requests can
`be serviced in parallel.
`(3) Rate Server/Pricing Engine 325. The Rate Server
`obtains currency exchangerate information from a variety of
`external rate sources and stores it
`locally. The Pricing
`Engine computes the currency exchangerates that the trad-
`ers see and that are used for trading. These are computed
`from the currency exchangerates obtained from the external
`rate sources, the directional movement and volatility of the
`market, the current Trading System exposure and a number
`of other parameters. The computed rates are made available
`to the other modules of the system, and are also stored on
`persistent media. Various methods of calculating such rates
`are knownto those skilled in the art. A preferred methodis
`described in U.S. patent application Ser. No. 09/764,366,
`filed Jan. 18, 2001, to Miiller et al.
`Traders can request historical rate data so that they can
`graphically display the movements of any pair of currencies.
`The Rate Server serves such requests and preferably has
`several years of currency exchange rates available for this
`purpose.
`
`For fast response time, the Rate Server caches in memory
`all of the frequently and recently requested rates so as to
`minimize the numberof disk accesses required.
`(4) VAR (Value at Risk) Server 320. This server obtains
`and serves Value at Risk information. Various methods of
`
`calculating VAR are knownin the art. A preferred method is
`disclosed in U.S. Provisional Patent Application No. 60/200,
`742, filed May 1, 2000, to Miller.
`(5) Transaction Server 355. This server encapsulates all
`transaction functionality and communicates the transactions
`to the Database 310 server (which runs on a separate host)
`after validating the transactions. The Transaction Server 355
`also updates all other modules that need to be informed of
`new transactions. Finally,
`the Transaction Server 355
`informs the currently online traders whena transaction (that
`may have been issued by a stop-loss, take-profit, or limit
`order daemon or by the Margin Control Manager) takes
`place.
`(6) Interest Rate Manager 360. The Interest Rate Manager
`360 periodically (for example, every few minutes, every few
`seconds, or tick-by-tick) goes through all trader accounts to
`compute the interest rate due or owed based on the instru-
`ments currently in the portfolio, each resulting in a trans-
`action of the trader account. The portfolio information is
`obtained through the Transaction Server 355. The interest
`rates used are obtained from external sources, and the
`history of interest rates are stored on persistent storage.
`Because real-time (or near real-time) information is used,
`the Interest Rate Manageris capable of calculating, paying
`out, and collecting interest by the second. Interest calcula-
`tion formulas are knownto those skilled in the art, and any
`appropriate formula can be used in the Interest Rate Man-
`ager without departing from the scope of the invention. An
`example is the formula
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`A=P(L+ -\"
`
`whereP is the principal, r is the annualinterest rate, t is the
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket