DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY

Similar documents
Combinatorial Types of Tropical Eigenvector

Combinatorial types of tropical eigenvectors

MAT-INF4110/MAT-INF9110 Mathematical optimization

Boolean Inner-Product Spaces and Boolean Matrices

CSC Linear Programming and Combinatorial Optimization Lecture 10: Semidefinite Programming

5 Quiver Representations

TORIC WEAK FANO VARIETIES ASSOCIATED TO BUILDING SETS

STRUCTURE OF THE SET OF ALL MINIMAL TOTAL DOMINATING FUNCTIONS OF SOME CLASSES OF GRAPHS

Chapter 1. Preliminaries

3. Linear Programming and Polyhedral Combinatorics

Semidefinite and Second Order Cone Programming Seminar Fall 2001 Lecture 5

A Parametric Simplex Algorithm for Linear Vector Optimization Problems

3. Linear Programming and Polyhedral Combinatorics

Solution: We can cut the 2-simplex in two, perform the identification and then stitch it back up. The best way to see this is with the picture:

DISCRETIZED CONFIGURATIONS AND PARTIAL PARTITIONS

Summer School: Semidefinite Optimization

ON THE RANK OF A TROPICAL MATRIX

Normal Fans of Polyhedral Convex Sets

Tropical Algebra. Notes by Bernd Sturmfels for the lecture on May 22, 2018, in the IMPRS Ringvorlesung Introduction to Nonlinear Algebra

Secant varieties of toric varieties

A Review of Linear Programming

IRREDUCIBLE REPRESENTATIONS OF SEMISIMPLE LIE ALGEBRAS. Contents

The cocycle lattice of binary matroids

MATH 215B. SOLUTIONS TO HOMEWORK (6 marks) Construct a path connected space X such that π 1 (X, x 0 ) = D 4, the dihedral group with 8 elements.

Auerbach bases and minimal volume sufficient enlargements

Appendix PRELIMINARIES 1. THEOREMS OF ALTERNATIVES FOR SYSTEMS OF LINEAR CONSTRAINTS

1 T 1 = where 1 is the all-ones vector. For the upper bound, let v 1 be the eigenvector corresponding. u:(u,v) E v 1(u)

Unless otherwise specified, V denotes an arbitrary finite-dimensional vector space.

AN INTRODUCTION TO CONVEXITY

RANK AND PERIMETER PRESERVER OF RANK-1 MATRICES OVER MAX ALGEBRA

Assignment 1: From the Definition of Convexity to Helley Theorem

SOME NEW EXAMPLES OF INFINITE IMAGE PARTITION REGULAR MATRICES

LINEAR ALGEBRA BOOT CAMP WEEK 1: THE BASICS

The Asymptotic Theory of Transaction Costs

THE GROUP OF UNITS OF SOME FINITE LOCAL RINGS I

MATH 326: RINGS AND MODULES STEFAN GILLE

TRISTRAM BOGART AND REKHA R. THOMAS

PRIMARY DECOMPOSITION FOR THE INTERSECTION AXIOM

5 Flows and cuts in digraphs

An Introduction to Spectral Graph Theory

Chapter 2 Spectra of Finite Graphs

Math 6510 Homework 10

Lecture 10 February 4, 2013

Formal power series rings, inverse limits, and I-adic completions of rings

A Generalized Eigenmode Algorithm for Reducible Regular Matrices over the Max-Plus Algebra

Linear Algebra Review

LIFTS OF CONVEX SETS AND CONE FACTORIZATIONS JOÃO GOUVEIA, PABLO A. PARRILO, AND REKHA THOMAS

CSC Linear Programming and Combinatorial Optimization Lecture 12: The Lift and Project Method

Introduction to Semidefinite Programming I: Basic properties a

Semimatroids and their Tutte polynomials

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

Lectures 6, 7 and part of 8

Math 341: Convex Geometry. Xi Chen

Linear Programming. Larry Blume Cornell University, IHS Vienna and SFI. Summer 2016

Math 443/543 Graph Theory Notes 5: Graphs as matrices, spectral graph theory, and PageRank

MATH SOLUTIONS TO PRACTICE MIDTERM LECTURE 1, SUMMER Given vector spaces V and W, V W is the vector space given by

Definition 2.3. We define addition and multiplication of matrices as follows.

LMI MODELLING 4. CONVEX LMI MODELLING. Didier HENRION. LAAS-CNRS Toulouse, FR Czech Tech Univ Prague, CZ. Universidad de Valladolid, SP March 2009

Facets for Node-Capacitated Multicut Polytopes from Path-Block Cycles with Two Common Nodes

Zaslavsky s Theorem. As presented by Eric Samansky May 11, 2002

Intrinsic products and factorizations of matrices

Contents Real Vector Spaces Linear Equations and Linear Inequalities Polyhedra Linear Programs and the Simplex Method Lagrangian Duality

Semidefinite Programming

The Miracles of Tropical Spectral Theory

The doubly negative matrix completion problem

Linear Vector Spaces

Quivers of Period 2. Mariya Sardarli Max Wimberley Heyi Zhu. November 26, 2014

Using Laplacian Eigenvalues and Eigenvectors in the Analysis of Frequency Assignment Problems

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

Z-Pencils. November 20, Abstract

Chapter 9: Systems of Equations and Inequalities

A Geometric Approach to Graph Isomorphism

ALGEBRAIC PROPERTIES OF BIER SPHERES

CO 250 Final Exam Guide

Linear and Integer Optimization (V3C1/F4C1)

Week 4. (1) 0 f ij u ij.

April 26, Applied mathematics PhD candidate, physics MA UC Berkeley. Lecture 4/26/2013. Jed Duersch. Spd matrices. Cholesky decomposition

Spectrally arbitrary star sign patterns

GEOMETRIC CONSTRUCTIONS AND ALGEBRAIC FIELD EXTENSIONS

A 2 G 2 A 1 A 1. (3) A double edge pointing from α i to α j if α i, α j are not perpendicular and α i 2 = 2 α j 2

Chapter 7 Network Flow Problems, I

MTH 309 Supplemental Lecture Notes Based on Robert Messer, Linear Algebra Gateway to Mathematics

Algebraic Methods in Combinatorics

CHAPTER 2: CONVEX SETS AND CONCAVE FUNCTIONS. W. Erwin Diewert January 31, 2008.

arxiv: v3 [math.co] 1 Oct 2018

Elementary linear algebra

Chapter 2: Unconstrained Extrema

First we introduce the sets that are going to serve as the generalizations of the scalars.

COUNTING NUMERICAL SEMIGROUPS BY GENUS AND SOME CASES OF A QUESTION OF WILF

A PRIMER ON SESQUILINEAR FORMS

Four new upper bounds for the stability number of a graph

Infinite-Dimensional Triangularization

Optimization WS 13/14:, by Y. Goldstein/K. Reinert, 9. Dezember 2013, 16: Linear programming. Optimization Problems

Lecture 1. Toric Varieties: Basics

642:550, Summer 2004, Supplement 6 The Perron-Frobenius Theorem. Summer 2004

Discrete Applied Mathematics

Course 311: Michaelmas Term 2005 Part III: Topics in Commutative Algebra

U.C. Berkeley CS294: Beyond Worst-Case Analysis Handout 12 Luca Trevisan October 3, 2017

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory

Acyclic Digraphs arising from Complete Intersections

Transcription:

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S 1. Definitions and basics In this working paper we have n currencies, labeled 1 through n inclusive and for every pair of currencies (i, j) [n] [n] we let f ij denote the amount of currency j that one receives for one unit of currency i. We assume that f ii = 1 and that f ij f ji 1. Let F denote the n n matrix with entries f ij. We may also refer to the matrix F as a foreign exchange market, or FXM for short and we can also think of F as being a weighted directed graph on n vertices with f ij being the weight on the edge i j. In addition, because of f ii = 1 each vertex i has a loop attached to it of weight 1. In practice the entries of such an F can change continuously with time but we will first assume that F is fixed. Our principal concern here will be to detect, both in theoretical terms and efficiently in practical terms, arbitrage opportunities in a given fixed F. A directed cycle of length r on F is a directed circuit C : i 1 i 2 i r 1 i r i 1 on r distinct currencies i 1, i 2,..., i r. A risk-free profit (an arbitrage opportunity) can only occur on F if there exists a directed cycle C such that f i1 i 2 f i2 i 3 f ir 1 i r f iri 1 > 1. The arbitrage opportunity provided by such a directed cycle C of length r equals arb(c) := (f i1 i 2 f i2 i 3 f ir 1 i r f iri 1 ) 1 r. Note that one would only exercise such a cycle C if arb(c) > 1. The arbitrage of F is given by arb(f ) := max{arb(c) : C a cycle of F } Note that arb(f ) 1 because, the worst that one can do is simply sit at a given vertex. We can assume that f ij f ji 1 since the contrary situations are very easy to spot by would be arbitrageurs. Such anomalies happen nonetheless, albeit on rare occasions. There is extensive literature on the practice of seeking out triangular arbitrage, namely in a given F find a cycle on a triple C : i j k i such that arb(c) > 1. When we have equality in f ij f ji = 1 for every i, j = 1, 2,..., n we say that F has no bid-ask spread. Otherwise (assuming that f ij f ji 1) we say that F has a bid-ask spread. If the matrix F has no bid-ask spread then it enjoys a great deal of structure not shared by those F s with bid-ask spread. Theorem 1. Let F be a matrix with f ij f ji = 1 and with arb(f ) > 1. Then for every currency i there is a triangular arbitrage opportunity involving i. Date: September 15, 2011. Supported by Science Foundation Ireland s Mathematics Initiative. 1

2 SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S Proof. Suppose that C is a cycle in F, C : 1 2 r 1 r 1 as shown in the left most figure below, with arb(c) > 1. Now take our currency i. If it is not part of our cycle C then consider the product (where r + 1 equals 1 in the product) of the oriented edges in each triangle of the middle figure. r j=1 f ijf j(j+1) f (j+1)i = (f i1 f 12 f 2i ) (f i2 f 23 f 3i ) (f ir f r1 f 1i ) = = f i1 f 12 (f 2i f i2 ) f 23 (f 3i f i3 ) f 34 f r1 f 1i Since f ij f ji = 1 (and pairing the first and last term) this product simplifies to precisely arb(c) which is greater than 1. Hence, at least one of the f ij f j(j+1) f (j+1)i must be greater than 1 providing us with a triangular arbitrage involving i. Similarly, as in the rightmost figure, if i is part of C we also get a triangular arbitrage from r j=1 f ijf j(j+1) f (j+1)i = arb(c) with the cancelation similar to that in the middle figure. In sharp contrast to those F s with no bid-ask spread, it is possible for an F to have an arbitrage cycle yet have no triangular arbitrage. 1 e 5 e 1 e 7 F = e 6 1 e 5 e 12 e 1 e 4 1 e 5.5 e 6 e 10 e 5 1 Note that f ij f ji 1 and that the cycle 1 2 3 4 1 yields an arbitrage of Yet there is no triangular arbitrage in this F. 1 4 f12 f 23 f 34 f 41 = e 1 4 (5 5 5.5+6) = e 0.125 > 1. 2. The Tropical Connection Thus far we have dealt with the matrix F and next we take the log (entrywise) of the matrix F, L := log(f ) we note that log(arb(f )) equals the maximum average weighted cycle of L. Furthermore, L is skew-symmetric: l i,j = l j,i if F has no bid-ask spread and otherwise we have l i,j + l j,i 0. Finding the quantity γ := log(arb(f )) is equivalent to solving the problem L λ = γ λ where a b := max{a, b} and a b := a+b for every pair of real numbers a and b. The semiring (R n,, ), with -identity equal to and -identity equal to 0 is known as the max-plus algebra [5] but which these days is referred to as tropical algebra. The problem of finding γ such that L λ = γ λ is known as the tropical eigenvalue problem for L. We include here the main results with a short proof for self-containment. A more extensive discussion and other proofs can be found in [2], [8]. Theorem 2. The tropical eigenvalue-eigenvector problem solves the arbitrage problem. a) If there exists γ such that L λ = γ λ then γ = log(arb(f )). b) Let A = L Γ, where Γ is the matrix with all entries γ. Let B = A A 2... A m... where A m denotes the m-th tropical product of the matrix A. Then B is well defined, and the i-th column of B is an eigenvector for L with eigenvalue γ if and

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY 3 only if the i-th currency is contained in a cycle of maximum arbitrage opportunity. Moreover, all the eigenvectors of L are generated (by tropical operations) by the columns of B with this property. Proof. a) If we denote by l ij the entries of L, and λ i the entries of λ we have that for each i, In consequence, max j {l ij + λ j } = γ + λ i. l ij + λ j γ + λ i. We will call this inequality ineq i,j. Summing up the inequalities ineq ik+1,i k for each i k i k+1 in a given circuit C : i 1 i 2 i r 1 i r i 1 of length r we obtain r (1) l ik i k+1 rγ. k=1 (Here r + 1 1). In other words, log(arb(c)) γ. Moreover, since the indices i k+1 vary within a finite set, we can pick a sequence of entries l ik i k+1 for which equality is reached in ineq ik,i k+1 and which form a cycle, so γ = log(arb(f )). b) Notice that the matrix A has 0 as eigenvalue. Indeed, γ satisfies max j {l ij γ + λ j } = 0 + λ i. Let a i,j := l ij γ and consider the weighted directed graph on n vertices corresponding to the matrix A, such that a ij is the weight on the edge i j. By definition, each entry b ij of the matrix B is the maximum among all weights of paths between i and j: m (2) b ij = max J { a jk j k+1 }, k=1 for all paths I : i = j 1 j 2 j m j m+1 = j of any length. As 0 is eigenvalue for A, then by equation (1), r k=1 a i k i k+1 0 for any cycle C : i 1 i 2 i r 1 i r i 1. Thus the maximum in equation (2) is attained on a path that doesn t contain any cycles, which guaranties that B is well defined. Moreover, B = A A 2... A m, with m n, where n is the number of rows of A. A vector v R n is an eigenvector for L with eigenvalue γ if and only if it is an eigenvector for A with eigenvalue 0. By equation (1), the i-th currency is in a cycle of maximum arbitrage if and only if b ii = 0. The fact that the entries b ki of B are maximum values of m k=1 a j k j k+1 for any path between k = j 1 and i = j m+1 implies that (3) max(a kj + b ji ) b ki. j If b ii = 0 then for all k. Indeed, in this case max(a kj + b ji ) = b ki j either the maximum b ki = max J { m k=1 a j k j k+1 } is attained along a path J of length > 1, in which case there exists j i such that a kj + b ji = b ki, or b ki = a ki = a ki + b ii since b ii = 0.

4 SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S If b ii 0, then there exists k such that (4) max(a kj + b ji ) < b ki. j Indeed, we can fix any vertex l in the directed graph associated to A and pick, among all the paths l = j 1 j 2 j m j m+1 = i of maximum weight b li, a path of maximum length m + 1. Let k := j m, the last vertex before i in this path. Then by construction b ki = a ki > max(a kj + b ji ). j In conclusion the columns of B which are eigenvectors for L are exactly those with diagonal entry b ii = 0. We saw that any eigenvector λ of L is also an eigenvector for A with eigenvalue 0, and therefore an eigenvector for B with eigenvalue 0. Tropical linear combinations of the columns of B are exactly the vectors of the form B λ, so λ = B λ is a tropical linear combination of the columns of B. Moreover by (4) we obtain that the only columns involved in the linear combination are those with the diagonal entry 0. 3. The Linear Programming Formulation Theorem 3. [5, Theorem 25-10] The value γ and the vector λ satisfy L λ = γ λ if and only if they form an optimal solution for the linear program min{ γ : l ij λ i λ j + γ for all ij [n] [n] } Proof. (also from [5, Theorem 25-10]) The tropical eigenvalue problem L λ = γ λ can be stated (classically) as follows: find a γ R and λ R n such that for each i [n] max{ l i1 + λ 1,..., l ij + λ j,..., l in + λ n } = γ + λ i. Clearly, each tropical eigenvalue γ and corresponding eigenvector λ satisfy ineq i,j defined in the previous theorem so each such (γ λ T ) T R n+1 is a feasible solution to the linear program In turn, the dual of (PP) is given by (PP) min{ γ : l ij λ i λ j + γ for all i, j [n] [n] }. (DP) max{ i,j l ij w ij : i,j w ij = 1, j w ij w j,i = 0, w ij 0 for all i, j [n] [n] }. By the previous theorem we know that there must exist a cycle C : i 1 i 2 i r 1 i r i 1 of length r with average weight equal to γ. With this in mind we can define the vector w (C) = (w (C) ij ) := ( 1 r : if (j i) C; 0 : otherwise), which is a feasible solution to (DP). Furthermore, l i,j w (C) ij = γ and so by LP duality γ must be the optimal value to the primal problem (PP). Hence, the solutions to the tropical eigenvalue-eigenvector problem L λ = γ λ are precisely the optimal solutions to (PP). Corollary 4. The support of the optimal solution to (DP) index the optimal FXM arbitrage strategy for a given F.

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY 5 4. The feasible region of currency cycles The feasible region of the dual problem above for n currencies can be rewritten in terms of matrices as P n = {W M n n (R) : W 0, 1 W = 1, 1 (W j W T j ) = 0} where W 0 is understood as each entry in the matrix W being non-negative, 1 is understood as the n n matrix of all ones, 1 W is understood as the scalar resulting from i,j w ij and W j denotes the j-th column of W. We can thus rewrite (DP) as max{l W : W P n }, where L W denotes the scalar product i,j l ijw ij for L = (l ij ) ij and W = (w ij ) i,j. Definition 5. For any given X M n n (R) with X 0 we can define the directed graph G(X) on n vertices such that j i is an edge if and only if X ij > 0. Definition 6. Recall that we defined a directed cycle of length r on F as a directed circuit C : i 1 i 2 i r 1 i r i 1 on r distinct currencies. From this we define 1 C := (1 C ) ij = χ {j i} C M n n and v(c) := 1 r 1 C. Clearly v(c) P n. We claim that v(c) is a vertex of P n. Moreover, the following holds Theorem 7. With the notations from above, P n = conv{v(c) : C a directed cycle } Proof. We first show that every directed cycle C yields a vertex v(c) of P n. This is equivalent to the existence of a cost vector (or a market state) L such that L v(c) > L X for all X P n \{v(c)}. Equivalently, there exists a market L such that for all X P n, L v(c) L X = X = v(c). Let L := 1 C. Clearly L v(c) = 1 C v(c) = 1. Since X P n then 1 X = 1 and X 0. Thus 1 X = 1 = L v(c) L X implies X C = 0, i.e. X must equal 0 off the support of C. Finally, consider the condition 1 X j = 1 Xj T which states that for every j, the sum of the entries in column j of X must equal the sum of the entries in row j of X. But X C = 0 forces us to have X s positive entries in a subset of the support of the cycle C. Since each vertex j in C has precisely one directed edge jk flowing into it and one edge ij flowing out of it then, by 1 X j = 1 Xj T, we must have X jk = X ij, and so X ij = 1 r for all (j i) C. This means X = v(c) as claimed. Conversely, suppose there exists a vertex of P n that is not of the form v(c). If that were the case then there would exist a hyperplane H such that v(c) H + for all cycles C but also a W = (w ij ) P n \H +. In other words there would exist an α R n n and a W P n such that α W = 0 and α v(c) > 0 for all cycles C.

6 SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S Writing α = (α ij ) i,j the condition α v(c) > 0 becomes α ij > 0 We claim that there exist l C > 0 such that and as a consequence 0 = i,j α ij w ij = i,j ij C w ij = α ij ( which would contradict l C (j i) C α ij > 0. C:(j i) C C:(j i) C l C, l C ) = C l C ( (j i) C We now turn our attention to the construction of the numbers l C. We choose the pair (a, b) such that w ab is the smallest of the positive entries of W. For every cycle C in G(W ) that contains the edge (b a) set w ab l C = # cycles in G(W ) which contain (b a) and create a new graph G(W ) defined by w ij = w ij C:(b a), (j i) C Note that w ab = 0 and, by our choice of minimal w ab, each w ij is non-negative. Hence, G(W ) is a subgraph of G(W ). Furthermore, for every vertex j in G(W ) we have the condition 1 W j = 1 W jt. To see this we recall that i w ij = i w ji. Also, if a cycle in G(W ) contains b a and enters vertex i along the way in the cycle then that same cycle must also exit vertex i along the way. Hence, l C = l C i i in G(W ) and so w ij = i i w ij C:(b a), (j i) C C:(b a), (j i) C l C = i l C C:(b a), (i j) C w ji C:(b a), (i j) C α ij ) l C = i Since W 0 and 1 W j = 1 W jt, then (after possibly normalizing to ensure that 1 W = 1), the matrix W gives a point in P n. Its graph G(W ) is a subgraph of G(W ) and this containment is strict unless G(W ) were a simple cycle to begin with. Thus, we can repeat this process recursively and the resulting numbers l C will satisfy w ij = C:(j i) C l C. 4.1. The faces of P n. Proposition 8. A directed graph G with n vertices is isomorphic to G(X) for an element X P n if and only if any arrow of G is contained in a cycle of G. Proof. If any arrow of G is inside a cycle of G we can define C G X = l Cv(C) C G l C where by C we denote cycles in G, the coefficients l C are positive real numbers and v(c) are vertices of P n as in Definition 6. Thus clearly G = G(X) and X P n. w ji

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY 7 If X is a point in P n we will prove that any arrow of G := G(X) is contained in a cycle of G(X). Assume (i j) is an arrow of G not contained in any cycle. We define G i to be the subgraph of G having as arrows any arrow of G which is part of an oriented path ending i, and having as vertices all the vertices of G that are contained in such paths. Let A i be the set of arrows (k l) such that k is a vertex of G i but l is not. As X P n and G = G(X), 0 = (X lk X kl ) = (X lk X kl ) + (X lk X kl ) = X lk. k G i,l G k,l G i k G i,l G i (k l) A i Indeed, clearly k,l G i (X lk X kl ) = 0 while for k G i and l G i, we have (l k) G so X kl = 0. But because (i j) is not in any cycle, j is not in G i so (i j) A i. As all X lk 0 and X ij > 0 we also have that (kl) A i X kl > 0, which contradicts the previous calculation. Definition 9. We call a directed graph G a flow graph if every arrow in G is part of a cycle of G. Theorem 10. There is a bijection f : { faces of P n } { flow subgraphs of the complete directed graph with n vertices }, such that for any point X in the interior of the face F, f(f ) = G(X). Moreover for any F F we have f(f ) f(f ). Proof. By the definition of P n, for each face F of P n there exists I {1,..., n} {1,..., n} such that the interior of F is given by Int(F ) = {X P n ; X ij = 0 iff (i, j) I}. We note that I with this property might not be uniquely associated to F. For example, both I = {i} {1,..., n} and I = {1,..., n} {i} would define the same F. For this reason, for each F we let I F to be the largest set I with the property that the interior of F is defined as above. We can thus define f(f ) := G(X) for any X Int(F ). In the previous proposition we proved that G(X) is a flow graph. On the other hand, for any flow graph G we can define the face { f 1 cycle C G (G) = X = l } Cv(C) cycle C G l ; l C > 0 for any cycle C G. C As G is a flow graph, all X f 1 (G) satisfy X ij > 0 for (j i) an arrow in G and 0 otherwise. So f(f 1 (G)) = G. By Theorem 7 and Proposition 8, any face F of P n has vertices {v(c α )} α, where C α are directed cycles in the complete directed graph with n vertices. A general element X Int(F ) is this of the form X = α c αv(c α ) with each c α > 0 and α c α = 1. Thus (5) G(X) = α C α and by the construction in the proof of Theorem 7, any element in f 1 (G(X)) is of the form α l αv(c α ), with l α 0 and α l α = 1. This shows that f 1 (f(f )). Formula (5) also shows that f(f ) f(f ) whenever F F.

8 SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S Definition 11. For any polytope P and any vertex v of P, we will denote by Cone(v, P ) the cone whose faces are all the faces of P containing v. Definition 12. Keeping the same notations from above, we define R n := {W M n n (R) : 1 W = 1, 1 (W j W T j ) = 0} = R n2 n. Corollary 13. Consider n currencies and the corresponding complete directed graph of n vertices. a) Let C be any cycle containing all n currencies. Then Cone(v(C), P n ) is simplicial in R n. b) Let C be be a cycle containing exactly k < n currencies. Then Cone(v(C), P n ) is combinatorially isomorphic to the product of the cone over k 2 k and a convex polyhedral cone C k, where k 2 k is the standard simplex in R k2 k 1. Proof. a) By Theorems 10 and 7, the bijection f : { faces of P n } { flow subgraphs of the complete directed graph with n vertices } sends the edges in P n to directed graphs containing two cycles. The addition of one more arrow (i j) to the cycle C leads to a graph G which is the union of two cycles intersecting at the arrow (i j). Also reversely, any graph containing C and exactly two other cycles which intersect at an arrow (i j) corresponds through f 1 to an edge of P n. As a consequence, the set of edges of P n containing the vertex v(c) is in bijection with the set of arrows in the complete directed that are not part of the cycle C. As there are exactly n 2 n such arrows we conclude that the convex hull of the corresponding edges forms a simplicial cone in R n. b) Let C be be a cycle containing k < n currencies and let G k denote the complete directed graph with these k vertices. Then f 1 (G k ) = P k while Cone(v(C), P k ) is simplicial in R k2 k by part a). Let G be the graph whose vertices are all the n currencies, and such that (i j) G iff (i j) C but both i and j are vertices of the cycle C. Then clearly G is a flow graph and G G k is the complete directed graph of n vertices. We define the cone C k := Cone(v(C), f 1 (G )). Any flow graph G can be written as G = (G G ) (G G k ). To establish a combinatorial isomorphism of Cone(v(C), P n ) with the product Cone(v(C), P k ) C k, we need to find a bijection between the lattices of their faces. Indeed, any face F of P n containing the vertex v(c) is uniquely defined by the pair of faces (f 1 (f(f ) G ), f 1 (f(f ) G k )). The graph f(f ) G k is a flow graph because any subgraph of G k containing C is a flow graph. To see that the graph f(f ) G is a flow graph we first notice that any arrow in f(f ) is in a cycle. If this cycle contains arrows i j with i, j G k but i j not in C this arrow can be replaced by the path in C from i to j. Example 14. If the cycle C contains n 1 vertices, C k is combinatorially isomorphic to the cone over the pyramid with basis n 1 n 1, where n is the standard simplex in R n 1. Proof. In the case when the nodes of the cycle C are the first n 1 currencies, f 1 (G ) is a pyramid with the vertex v(n n). This could be viewed as a consequence of Theorem 10 and the fact that deleting the cycle n n from any graph G containing it yields a flow graph as well, so at the level of faces: f 1 (G) = conv < v(n n), f 1 (G \ {(n n)}) >.

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY 9 Let B denote the basis of the pyramid. The vertices of B correspond to all the cycles in G except n n, i.e. the cycles that intersect C after a path in C or a vertex, or C. Any face of B containing v(c) is completely determined by a choice of a set of arrows going in the n-th currency and a set of arrows going out of the n-th currency. This establishes a bijection between the set of faces of B containing v(c) and the set (P({1,..., n 1}) \ { }) (P({1,..., n 1}) \ { }), yielding a combinatorial isomorphism As f 1 (G ) is a pyramid over B, we get Cone(v(C), B) = cone over n 1 n 1. C k = Cone(v(C), f 1 (G )) = cone over the pyramid over n 1 n 1. 5. Constant bid-ask polytope In this section we will study the case when the bid-ask ratio is the same for any two currencies. We recall that when solving the linear programming dual problem we regard the logarithm of the exchange rate matrix as a linear function L : M n n (R) R. The constant ask-bid ratio condition, l ij + l ji = c = constant is written in terms of vertices of the feasible region P n as L(v(i j)) = 1 c, for all currencies i and j, 2 i.e. L is constant on the linear space generated by v(i j), for all currencies i and j. Via the identification M n n (R) = Sym 2 (R n ) 2 (R n ), this space is exactly Sym 2 (R n ). So, in this case the feasible region for the linear programming dual problem can be regarded as the image of P n through the projection p : M n n 2 (R n ). We now describe the linear space generated by p(p n ). First we note that the vector space K generated by P n is the kernel of the linear morphism h : M n n (R) R n such that h(e ij ) = e i e j, where e ij is the matrix with entry 1 on the ij position and all the other entries equal to 0, and {e i } i is the standard basis in R n. Indeed, the condition h(x) = 0 can be rewritten as 1 (X j X T j ) = 0, which is exactly the condition for X to be an element in the vector space generated by P n. If we restrict h to 2 (R n ) we obtain the usual differential map d(e i e j ) = e i e j. So K := ker d is the vector space generated by p(p n ). As before, we would like to establish a bijection between the faces of p(p n ) and certain graphs. For this we will need a few preparations. Definition 15. We define an oriented graph to be a directed graph with at most one arrow between any two vertices. To any oriented graph we can associate an undirected graph by replacing the arrows by edges and from any undirected graph we can create an oriented graph by choosing an orientation for each of the edges. As before, an oriented flow graph is an oriented graph such that each of its edges is contained in a cycle. An oriented flow graph is maximal if it is obtained by choosing an orientation on the complete undirected graph.

10 SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S Proposition 16. a) A maximal oriented graph is a flow graph if and only if it contains a cycle passing through all its vertices. b) Any oriented flow graph can be completed to a maximal oriented flow graph. Proof. It is straightforward to see that if a directed graph contains a cycle passing through all vertices it is a flow graph. Let C = (i 1 i 2... i k i 1 ) be a cycle of maximal length in a maximal oriented flow graph G. Assume that this cycle doesn t pass through the vertex n. Then if n i 1 is an arrow in G so is n i k, otherwise (i 1... i k n i 1 ) would be a longer cycle in G. Thus if n i 1, we can prove inductively that all arrows n i t are in G for all t {1,..., k}. Similarly if i 1 n is in G all arrows i t n are in G for all t {1,..., k}. We can reason in this way for any other vertex not in C. We thus divide the vertices of G \ {i 1,..., i k } in sources and sinks depending on whether the arrows that join them with C are oriented towards the cycle C or not. Without loss of generality, assume n i 1 is in G. As G is a flow graph, there must exist a cycle C of G containing n i 1. As n is a source, C must also contain a path (i t m... n), for some vertex m in G \ {i 1,..., i k }. This means that m is a sink so the cycle (n i 1 i 2... i k m... n) is also in G, but it is longer than C. So we conclude that a cycle of maximal length has to pass through all vertices of G. To prove b) we will proceed to add in arrows to the oriented flow graph G inductively, and so obtain new oriented flow graphs. For this, we consider all pairs (i, j) {1,..., n} {1,..., n} in the natural order. Whenever (i j) G and (j i) G, it is enough to add one of these two arrows to the graph G in such a way that this arrow is part of a cycle. We thus obtain a new flow graph and can continue accordingly. In order to decide which one of the two arrows to add in, we discuss a few cases: (1) If there exists at least one cycle in G passing through j, choose any such cycle j j 1... j k j. If i j k is an arrow in G then we can add in the arrow j i which will be part of the cycle j k j i j k. If j k i is an arrow in G then we can add in the arrow i j which will be part of the cycle j j 1... j k i j. If there is no arrow between i and j k we can add in both i j k and j i. Both these arrows will be in the cycle i j k j i. (2) If there exists no cycle in G passing through j, but at least one cycle passing through i, we apply the same procedure as in case (1), but with i swapped with j. (3) If there are no cycles in G passing through i or j this means that i and j are isolated vertices. Then we can choose any other vertex k and add in a cycle i k j i. Theorem 17. There exists a bijection g : { faces of p(p n )} { oriented flow graphs with n vertices }. This bijection preserves inclusion. The facets of p(p n ) are given by choices of orientations on the complete undirected graph with n vertices such that the oriented graph obtained is an oriented flow graph.

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY 11 Proof. An orientation on the complete undirected graph of n vertices corresponds to a choice of a linear basis in 2 (R n ). Indeed, let I denote the set of arrows of a fixed maximal oriented graph with n vertices. A basis of 2 (R n ) is given by {e i e j } (i j) I. Let denote the convex hull of stardard basis in M n n (R). With the notations introduced earlier, K = p 1 (K ) and as a consequence p( ) K = p( K) = p(p n ). As = conv{e ij ; i, j [n]}, where {e ij } i,j [n] and is the standard basis in M n n (R), and p : M n n (R) 2 (R n ) is a linear, we have p( ) = conv{e i e j ; i, j [n]} = conv{±e i e j ; (i j) I} = { Y ij e i e j ; Y ij 1}, (i j) I (i j) I so p(p n ) consists of points Y = (i j) I Y ije i e j K such that (i j) I Y ij 1. Thus the boundary of p(p n ) consists of points Y K such that (i j) I Y ij = 1, and its facets correspond to choices of subsets J I such that for all Y = (i j) I Y ije i e j F we have Y ij 0 whenever (i j) J and Y ij < 0 otherwise. For any X = i,j X ije ij P n, so that X ij = 1 and X ij 0, we have p(x) = (X ij X ji )e i e j. (i j) I If there exist i, j such that both X ij 0 and X ji 0, then (i j) X ij X ji < i,j X ij = 1. In conclusion the boundary p(p n ) is the union of all projections of faces of P n corresponding to oriented flow graphs. As both f 1 and p preserve inclusion, then due to Proposition 16, b), we can write (6) p(p n ) = G p(f 1 (G)), where the union is taken after all maximal oriented flow graphs G. Let G denote such a maximal oriented flow graph with n vertices. We define sgn G : I {+1, 1} by { 1 if (i j) G; sgn G (i j) = 1 otherwise Then for any X f 1 (G) and Y = p(x) we have Y ij = sgn G (i j)x ij for all (i j) I. Thus the correspondence { maximal oriented flow graph with n vertices } { facets of p(p n )} G F G such that p(f 1 (G)) F G is injective. By formula (6), this function is also surjective and so bijective. Furthermore, the affine subspace of M n n (R) generated by the face corresponding to an oriented flow graph doesn t intersect the vector space ker p =< v(i j) ; i, j [n] >. Indeed, any linear combination of matrices v(i j) can be written as i,j X ij(e ij + e ji ) so it cannot be written as C a Cv(C) where C are cycles in an oriented graph. In conclusion, for any face F of P n corresponding to an oriented graph, p(f ) = F. In particular, as facets F of p(p n ) satisfy

12 SFI FINANCIAL ALGEBRA PROJECT AT UCC: BH, AM & EO S F = p(f 1 (G)) = f 1 (G) for G a maximal oriented flow graph, it follows that all faces of p(p n ) correspond directly to oriented flow graphs. Corollary 18. Each facet of p(p n ) contains a maximal cycle, and each maximal cycle is contained in 2 n(n 3) 2 facets. Proof. This is a direct consequence of Proposition 16 a). The exchange rate arbitrage literature focuses on the search for triangular arbitrages. It is thus natural to classify arbitrages into arbitrages given by 3 cycles, 4 cycles, etc. For this reason we will investigate the polytope T n generated by 3 cycles in 2 (R n ). ( ) n 1 With the notations from the beginning of the section K = ker(d), an dimensional 2 subvector space of 2 R n. The exact sequence of differentials on wedge products of a vector space gives a natural isomorphism K = d( 3 R n ) = 3 R n /d( 4 R n ). Via this isomorphism, the vertices of T n are v(i j k i) = d(e i e j e k ). Moreover, for any k fixed, the subset of vertices {d(e i e j e k ); i < j} forms a basis for the vector space K. As both v(i j k i) = d(e i e j e k ) and v(i k j i) = d(e i e j e k ) are also vertices of T n, ( ) n 1 the polytope T n is dimensional as well. 2 We start with the case n = 4. Proposition 19. T 4 is a cube. Two vertices v(c 1 ) and v(c 2 ) of T 4 are joined by an edge in T 4 iff the two oriented 3-cycles C 1 and C 2 share exactly one edge (i j) of the same orientation. Two vertices v(c 1 ) and v(c 3 ) are joined by a small diagonal in the cube iff they do not have the same vertices and there exists exactly one pair (i, j) such that (i j) C 1 and (j i) C 3. Proof. Via Theorem 17, this follows by a direct check on the coordinates of points Y C i for the oriented 3-cycles C i. References [1] M. Aigner & G. M. Ziegler Proofs from the book (Second Edition) Springer, 2001. [2] Bapat, R. B. (1998) A max version of the perron-frobenius theorem Linear Algebra and its Applications, 275-276, pp. 3-18. [3] A.I. Barvinok & K. Woods Short rational generating functions for lattice point problems. J. Amer. Math. Soc. 16 (2003) 957 979. [4] A.I. Barvinok & K. Woods Short rational generating functions for lattice point problems. J. Amer. Math. Soc. 16 (2003) 957 979. [5] R.A. Cunninghame-Green Minimax algebra Springer, 1979. [6] GNU Linear Programming Kit Version 4.8, http://www.gnu.org/software/glpk/ [7] E. Leahy Exchange rate abitrage in the presence of bid-ask spreads, undergraduate thesis, University College Cork. 2006. 44 pages.

DETECTION OF FXM ARBITRAGE AND ITS SENSITIVITY 13 [8] C. Wende. Q. Xiangdong, D. Shuhui, The eigen-problem and period analysis of the discrete event system. Syst. Sci. Math. Sci. 3 (3) (1990) 243-260. School of Mathematical Sciences, University College, Cork, Ireland