BAILII is celebrating 24 years of free online access to the law! Would you consider making a contribution?
No donation is too small. If every visitor before 31 December gives just £1, it will have a significant impact on BAILII's ability to continue providing free access to the law.
Thank you very much for your support!
[Home] [Databases] [World Law] [Multidatabase Search] [Help] [Feedback] | ||
England and Wales High Court (King's Bench Division) Decisions |
||
You are here: BAILII >> Databases >> England and Wales High Court (King's Bench Division) Decisions >> Terraform Labs PTE Ltd v Wintermute Trading Ltd [2024] EWHC 737 (KB) (27 March 2024) URL: http://www.bailii.org/ew/cases/EWHC/KB/2024/737.html Cite as: [2024] EWHC 737 (KB) |
[New search] [Printable PDF version] [Help]
KING'S BENCH DIVISION
Strand, London, WC2A 2LL |
||
B e f o r e :
____________________
Terraform Labs Pte Limited |
Applicant |
|
- and - |
||
Wintermute Trading Limited |
Respondent |
____________________
Henry Byam-Cook KC and Sam Goodman (instructed by Rahman Ravelli) for the Respondent
Hearing date: 19 and 20 March 2024
____________________
Crown Copyright ©
Mr Justice Lavender:
(1) Introduction
(1) I did not decide whether Wintermute had fully complied with the production order; and
(2) I decided not to make the orders sought by Terraform; but
(3) I decided instead to make an order in which I decided various issues as to the interpretation of the production order and ordered Wintermute, in the light of that clarification, to produce certain documents which it had been ordered to produce by the production order, save to the extent that Wintermute had already produced those documents.
(2) Background
"The evidence sought will be used in these proceedings and at trial by Defendants to enable the U.S. Court and jury to determine whether or not the Stability Representation was false and the Defendant's fraudulent activity led to $40 billion in market losses. To do so, Defendants will argue that U.S. Court and jury need to understand the full extent of Wintermute's shorting activities and strategy and that this activity caused the collapse of the UST and LUNA prices."
"Wintermute's developers spent a month integrating their trading systems with Terra's blockchain technology. Just as high frequency trading firms try to get the fastest possible access to stock market data, Wintermute set up its own servers and ran Terra software nodes to get a front-row view of UST's transactions and price. They wrote 4,000 lines of code for new trading algorithms."
"Two days later [i.e. on 9 May 2022], UST's stunning freefall began, and Wintermute unleashed its arbitrage strategy. Due to Terra's design and the coin's cratering price, Wintermute could buy UST for $0.80 and redeem it for $1.00 worth of LUNA, its sister cryptocurrency. Then it could quickly sell LUNA, snatching a profit margin of 10% to 15% on every trade. …
By the end of the week, UST had lost nearly all its value, and Wintermute had traded more than $250 million of it all the way down to about $0.10 a token, pocketing tens of millions in profits. …"
"The First Respondent shall produce copies of the documents listed in Appendix A hereto to the Applicant's UK Representatives (defined in Appendix B) in electronic form by 15th December 2023, save only for items 1(a), 4(a) and 4(c) on Appendix A, which shall be produced by 5th January 2024. To the extent that production by photocopies or in electronic form is impractical, the First Respondent shall make such documents available for inspection by the Applicant's UK Representatives."
"The file containing the code that was created by Wintermute between 1 February 2022 and 9 May 2022 in order to enter into the Transactions."
"The purchases, sales, futures contracts, option contracts and derivative instruments entered into by Wintermute in respect of the cryptocurrencies Terra (UST) and LUNA (LUNA)."
(1) [REDACTED]
(2) [REDACTED]
(3) [REDACTED] and
(4) [REDACTED]
"Q … I am asking whether you have knowledge as to whether new lines of code for new trading algorithms were written?
A I would think yes, because those would be new trading algorithms, so you cannot use existing lines of code because we were not integrated with Terra before."
"giving directions for the determination of the dispute between the parties as to what the [production] order required, whether the respondent has complied fully with the [production] order and, if not, what document or documents remain to be produced, or made available for inspection, in order to comply with the [production] order."
(1) I ordered Terraform to file and serve by 5 February 2024 an application, with the evidence in support, setting out the specific ways in which Terraform alleges that Wintermute has not complied with the production order and seeking a ruling to that effect.
(2) I set a timetable (which was subsequently varied) for the filing and service of evidence in response and in reply.
(3) I gave the parties permission to rely on expert evidence, limited to one expert each in the field of computer coding.
(4) I gave the parties liberty to make an application to the Court by 5 March 2024 for permission to call the experts at the hearing of the application.
(3) Overview of Wintermute's Code
(1) Wintermute's data-gathering code obtains data from other systems, such as Terraform's, to be made available to the trading code.
(2) The trading algorithms in the trading code use that data to decide whether to make trades and, if so, to issue trading instructions.
(3) The execution code gives effect to the trading instructions.
(4) At all stages, the integration and connectivity code enables Wintermute's platform to communicate with other systems, such as Terraform's.
(5) No doubt other files of code have other, ancillary functions.
(1) The code in some of the files which were used for the Relevant Purpose may not have required any changes, especially if they were generic in nature.
(2) It is not to be expected that every change made to Wintermute's code during the Relevant Period was made for the Relevant Purpose. There may, for instance, have been changes which were generic in nature or which were specific to assets other than UST or LUNA.
(1) Terraform contends that the changes made to Wintermute's code in the Relevant Period for the Relevant Purpose must have included new, or at least amended, trading algorithms, since Wintermute had not traded UST or LUNA before the Relevant Period. In support of this contention, Terraform relies, in particular, on:
(a) the statement in the Forbes article that Wintermute's developers "wrote 4,000 lines of code for new trading algorithms"; and
(b) Mr Gaevoy's evidence in his deposition that he thought that new lines of code for new trading algorithms were written "because those would be new trading algorithms, so you cannot use existing lines of code because we were not integrated with Terra before".
(2) Wintermute contends that it did not create any new trading algorithms or amend any existing trading algorithms during the Relevant Period for the Relevant Purpose.
(4) The Legal Context
(1) One of the questions for me to consider was whether Wintermute had complied with the production order.
(2) The production order was made pursuant to the Evidence (Proceedings in Other Jurisdictions) Act 1975 ("the 1975 Act").
(3) As appears from the first judgment, Terraform has made clear its intention to use the court's contempt jurisdiction to encourage compliance with the production order and/or to penalise any non-compliance.
(4)(a) Compliance with a Court Order
41. The applicable legal principles in relation to construction of Court Orders and findings of contempt in relation to breach of an Order were essentially common ground between the parties both before the judge and before this Court and, in any event, the Supreme Court recently gave guidance on this issue in JSC BTA Bank v Ablyazov (No. 10) [2015] UKSC 64; [2015] 1 WLR 4754, in the judgment of Lord Clarke of Stone-cum-Ebony JSC (with whom the other Justices agreed) at [16]-[26]. The principles can be summarised as follows:
(1) The sole question for the Court is what the Order means, so that issues as to whether it should have been granted and if so in what terms are not relevant to construction (see [16] of the judgment).
(2) In considering the meaning of an Order granting an injunction, the terms in which it was made are to be restrictively construed. Such are the penal consequences of breach that the Order must be clear and unequivocal and strictly construed before a party will be found to have broken the terms of the Order and thus to be in contempt of Court (see [19] of the judgment, approving inter alia the statements of principle to that effect in the Court of Appeal by Mummery and Nourse LJJ in Federal Bank of the Middle East v Hadkinson [2000] 1 WLR 1695).
(3) The words of the Order are to be given their natural and ordinary meaning and are to be construed in their context, including their historical context and with regard to the object of the Order (see [21]-[26] of the judgment, again citing with approval what Mummery LJ said in Hadkinson).
42. As Mr Joseph QC correctly submitted, those principles confirm a consistent line of authority that Court Orders are to be construed objectively and in the context in which they are made, including the reasons given by the Court for making the Order at the time that it was made. That point was made clearly by Lord Sumption giving the judgment of the Privy Council in Sans Souci Limited v VRL Services Limited [2012] UKPC 6 at [13]:
"…the construction of a judicial order, like that of any other legal instrument, is a single coherent process. It depends on what the language of the order would convey, in the circumstances in which the Court made it, so far as these circumstances were before the Court and patent to the parties.
The reasons for making the order which are given by the Court in its judgment are an overt and authoritative statement of the circumstances which it regarded as relevant. They are therefore always admissible to construe the order. In particular, the interpretation of an order may be critically affected by knowing what the Court considered to be the issue which its order was supposed to resolve."
(4)(b) The 1975 Act
(1) The court cannot order production of documents which are outside the scope of the letter of request: see Rio Tinto Zinc Corporation v Westinghouse Electric Corporation [1978] AC 547, at 636A.
(2) Subsection 2(4) of the 1975 Act provides as follows:
"An order under this section shall not require a person—
(a) to state what documents relevant to the proceedings to which the application for the order relates are or have been in his possession, custody or power; or
(b) to produce any documents other than particular documents specified in the order as being documents appearing to the court making the order to be, or to be likely to be, in his possession, custody or power."
(4)(c) Contempt
"There is a general principle that an order must be expressed in unambiguous language so that the defendant knows exactly what is forbidden or required by the order. Contempt proceedings will not succeed when the order is unclear or ambiguous."
"… An injunction should not be granted in terms which leave it to be argued out in contempt proceedings what it does and does not require. …"
(5) The Evidence
(1) I drew attention during the hearing to the fact that there was no evidence as to how Wintermute "triggered" its code to consider initiating, and to initiate, trades in UST and LUNA. The fact that Mr Ellison did not address that issue was also a source of concern about his evidence.
(2) During the hearing, Mr Anderson told me, no doubt on instructions, but without reference to any evidence to that effect, that Wintermute's ability to trade UST and LUNA was created once arrangements were made for data about UST and LUNA to be sent to Wintermute's platform and that, once those arrangements were made, there was no need for any change to Wintermute's trading algorithms. That may or may not be correct, but it is difficult to square with other evidence in the case, namely what was said in the Forbes article and what Mr Gaevoy said in his examination about trading algorithms.
(3) In correspondence, Wintermute's solicitors have given the clear impression that Wintermute knows what were the approximately 4,000 lines of code referred to in the Forbes article, but Wintermute has not identified those 4,000 lines of code and does not appear even to have told Mr Ellison what they were, since Mr Ellison has speculated as to what they were.
(4) Mr Ellison said that he had spoken to Mr Tim Wu, Wintermute's "internal expert and head of decentralised finance (DeFi) operations", who was employed by Wintermute in the Relevant Period and involved in Wintermute's trading in UST and LUNA, but there is no evidence as to what information Mr Wu provided to Mr Ellison.
(1) Mr Ellison had access to Wintermute's code, but Mr Boswell did not.
(2) Mr Ellison spoke to Mr Wu, but Mr Boswell did not.
(3) Mr Boswell was not told what information Mr Wu had provided to Mr Ellison.
(1) Mr Byam-Cook invited me to disregard Mr Ellison's evidence, as Joanna Smith QC did in DBE Energy Ltd v Biogas Products Ltd [2020] EWHC 1232 (TCC), and to draw adverse inferences against Wintermute.
(2) Mr Anderson invited me to rely on Mr Ellison's evidence, contending that:
(a) Terraform should have applied for an order that Mr Ellison give evidence and be cross-examined.
(b) Terraform should have applied for an order that Mr Boswell be permitted to inspect Wintermute's files of code.
(c) Terraform was given the opportunity in January 2024 to inspect sample files of code.
(3) Mr Byam-Cook replied by saying that:
(a) By virtue of changes to the timetable, the time for applying for an order that the experts give oral evidence expired before Mr Ellison's report was served.
(b) In any event, he could not sensibly have cross-examined Mr Ellison without information as to the material which Mr Ellison had seen.
(c) There had not been sufficient time between the service of Mr Ellison's report on 6 March 2024 and the hearing on 19 March 2024 for an application for inspection to be heard and determined and for inspection to take place.
(d) The offers made in January 2024 were subject to the unacceptable condition that Terraform agree not to rely on anything other than the Produced Files at the trial of the US action.
(6) The Order Sought by Terraform
"(a) The code developed by Wintermute between 1 February and 9 May 2022 (inclusive) in order to enter into the "Transactions" (as defined in Appendix A to the 7 December Order) in the sense of the full set, or collection, of instructions for entering the "Transactions"
(b) The code developed by Wintermute setting out how and when "Transactions" (as defined in Appendix A to the 7 December Order) are to be entered into;
(c) The "4000 lines of code for new trading algorithms" described in the Forbes Article dated 20 December 2022 written by Jeff Kauflin;
(d) With regard to the file which Wintermute disclosed on 20 December 2023 entitled [REDACTED], that defines how [REDACTED] is created, provided to the [REDACTED] method, and used in the process of entering into "Transactions" (as defined in Appendix A to the 7 December Order);
(e) The code constituting the following references in the [Produced Files] [i.e. the 19 files referred to in the Produced Files].
(f) The code repository files containing the code developed by Wintermute between 1 February and 9 May 2022 (inclusive) in order to enter into the "Transactions" (as defined in Appendix A to the 7 December Order) in the sense of the full set, or collection, of instructions for entering the "Transactions"."
(1) an order that any code produced by Wintermute be produced in native Python format;
(2) an order that Wintermute make its code repository available for inspection by Terraform; and
(3) a declaration that Wintermute was in breach of paragraph 3 of the production order.
"17. The 7 December Order refers to "the code that was created…". The word "created" is not one that would be used in a technical coding context. The technical word for the writing of code to accomplish a task (e.g. writing the instructions to enter a transaction of the types referenced above and in the 7 December Order) is to "develop".
18. The process of code development (in the context of code that will instruct a computer to enter into a transaction) involves building up a collection of components of code, or blocks of code, for the purpose of entering into the transaction. This is the way of building up the complete set of instructions.
19. This process of development is not one whereby all the code instructions are written from a blank page. Rather, the developer starts with certain pre-existing components or blocks of code. These may be blocks that the organization has written in the past, blocks available from open-source software or they may comprise proprietary technology. The developer then combines those blocks in a new manner and adds to them new blocks of code such that the resulting new collection of blocks comprises the complete set of instructions for entering the transaction that the developer set out to be able to enter.
20. The output of this development process is new code that can enter the transaction. It also follows that the resulting code / the full set of instructions can be new even though some of its constituent blocks might have pre-existed the development process. Once the organization wants to start entering into transactions it will run or execute this new code i.e. the full set, or collection, of instructions."
(7) Decision
(7)(a) Has Wintermute Complied Fully with the Production Order?
(1) has received unidentified information from one of the Wintermute's employees; and
(2) has had access to Wintermute's code when Terraform's expert witness has not.
(7)(b) The Meaning of the Production Order
(1) if a file contains one or more lines of code written during the Relevant Period for the Relevant Purpose, then the production order required production of the whole of that file, regardless of when the other code contained in that file was created; but
(2) if a file contains no lines of code written during the Relevant Period for the Relevant Purpose, then the production order did not require production of that file:
(a) whether or not it is referred to in a file which contains such code; and
(b) whether or not it is used, or was intended to be used, in order to enter into the Transactions.
(1) It appears that Mr Ellison may have read the production order as only referring to a certain type or types of code, i.e. execution code and trading algorithms. It is not limited to any particular type of code. Different types of code were needed for the Relevant Purpose. For instance, Mr Anderson told me that what enabled Wintermute's code to start considering trades in UST and LUNA was inputting data about UST and LUNA, which suggests that data collection code was created for the Relevant Purpose. I ordered that:
(a) "code" meant any computer code and includes data collection code, trading logic code, trade execution code, integration and connectivity code and any other type of code; and
(b) code was created for the Relevant Purpose if it was created to enable data about UST or LUNA to be input into Wintermute's systems with a view to Wintermute's systems generating trades in UST or LUNA.
(2) Mr Ellison's report suggests that he was of the opinion that the production order only required the production of higher level code, written in the Python language, but the scope of the production order was not limited by reference to the coding language used.
(3) Aspects of Mr Ellison's report suggest that he may have been of the opinion that the production order only required the production of code which was necessary to understand the means through which the Transactions were executed. The production order contained no such limitation.
(4) Other aspects of Mr Ellison's report suggested that he may have been of the opinion that the production order only applied to code which was created solely for the Relevant Purpose and not to code which could also be used for another purpose or purposes. My order declared that this was incorrect, while also declaring that code was not created for the Relevant Purpose if it was created solely for the purpose of amending the way in which Wintermute entered into transactions generally.
(7)(c) The Format of Any Files Produced
(7)(d) Inspection of Wintermute's Code Repository
(7)(e) Paragraph 3 of the Production Order
"a sworn statement….which attests to the fact the production comprises the entirety of the documents herein, or otherwise specifies what documents have been omitted and the reason for their omission".
"subject to the qualification set out in my Second Affidavit, I now confirm that the documents that the First Respondent has produced pursuant to the Wintermute Order are true and accurate copies of the entirety of the documents described in Appendix A, paragraph 2 of the Wintermute Order. Again, I apologise to the Court for this inadvertent oversight"
(8) This Judgment