Replication Process

How does the replication work?

Tradeable products in the system include all derivatives that can be replicated by the Elektro risk sharing building blocks ( RSBBs ), which are comprised of a ‘ per-auction settled ‘ fully collateralized forward contract ('Elektro Cash'), a 'defined maturity 'fully collateralized futures contract' ('Elektro Forward'), a European call option ( and therefore by put/call parity, put options ), a binary contract ( and therefore all European digital and barrier options ), all payoffs that can be statically replicated by the Elektro RSBBs, and an American, VAR based trigger basket option ('Elektro margin loan')

In the replication process, orders are decomposed into orders on atomic instruments.

The designated list of atomic instruments is as follows:

Instrument

Description

Spot (C1C2)

Spot trade on underlying pair C1/C2

Forward (C1C2, T)

Forward trade on underlying pair C1/C2 with expiry T

Call (C1C2, K, T)

Call option on underlying pair C1/C2 with strike K and expiry T

BinaryCall (C1C2, K, T)

Binary call option on underlying pair C1/C2 with strike K and expiry T.

Pays out if the underlying pair C1/C2 is equal to or greater than K at

expiry.

ForwardCash (C1, T)

Pays out 1 unit of currency C1 at expiry T

MarginLoan (C1, R, T)

Margin loan on currency C1, bucket R and maturity T.

The replication tables (below) define the replication rules:

There is one replication defined for each instrument into the immediately simpler instruments. Replication is repeated until all instruments are atomic, giving the final, full replication.

For example:

A Down-and-In Put(K, B) is replicated into Put(B) + (K-B) Binary Put(B). Then, the Put(B) is replicated as Call(B) - Forward, and Binary Put(B) as ForwardCash – BinaryCall(B).

This is the final replication.

Contract

Replication

+1 Spot( currencyPair=C1C2)

+1 Spot( currencyPair=C1C2)

+1 Forward(currencyPair=C1C2, expiry)

+1 Forward(currencyPair=C1C2, expiry)

+1 Call(currencyPair=C1C2, strike=K, expiry)

+1 Call(currencyPair=C1C2, strike=K, expiry)

+1 Put(currencyPair=C1C2, strike=K, expiry)

+1 Call(currencyPair=C1C2, strike=K, expiry)

-1 Forward(currencyPair=C1C2, expiry)

+1 BinaryCall(currencyPair=C1C2, strike=K, expiry)

+1 BinaryCall(currencyPair=C1C2, strike=K, expiry)

+1 BinaryPut(currencyPair=C1C2, strike=K, expiry)

+1 ForwardCash(currency=C2, expiry)

-1 BinaryCall(currencyPair=C1C2, strike=K, expiry)

+1 CallSpread(currencyPair=C1C2, strike1=K1, strike2=K2, expiry)

+1 Call(currencyPair=C1C2, strike=K1, expiry) -1 Call(currencyPair=C1C2, strike=K2, expiry)

+1 PutSpread(currencyPair=C1C2, strike1=K1, strike2=K2, expiry)

+1 Put(currencyPair=C1C2, strike=K1, expiry) -1 Put(currencyPair=C1C2, strike=K2, expiry)

+1 UaI_Call(currencyPair=C1C2, strike=K, barrier=B, expiry)

+1 Call(currencyPair=C1C2, strike=B)

+(B-K) BinaryCall(currencyPair=C1C2, strike=B)

+1 UaO_Call(currencyPair=C1C2, strike=K, barrier=B)

+1 CallSpread(currencyPair=C1C2, strike1=K, strike2=B)

-(B-K) BinaryCall(currencyPair=C1C2, strike=B)

+1 DaI_Put(currencyPair=C1C2, strike=K, barrier=B)

+1 Put(currencyPair=C1C2, strike=B)

+(K-B) BinaryPut(currencyPair=C1C2, strike=B)

+1 DaO_Put(currencyPair=C1C2, strike=K, barrier=B)

+1 PutSpread(currencyPair=C1C2, strike1=K, strike2=B)

-(K-B) BinaryPut(currencyPair=C1C2, strike=B)

+1 BinarySpread(currencyPair=C1C2, strike1=K1, strike2=K2)

+1 BinaryCall(currencyPair=C1C2, strike=K1)

-1 BinaryCall(currencyPair=C1C2, strike=K2)

Structured Products:

Contract

Replication

+1 DiscountCert(currencyPair=C1C2, cap=K, expiry)

-1 Put(currencyPair=C1C2, strike=K, expiry)

+1 ReverseConvertible(currencyPair=C1C2, strike=K, expiry)

+1 Put(currencyPair=C1C2, strike=K, expiry)

+1 BullSpreadCert(currencyPair=C1C2, strike1=K1, strike2=K2, expiry)

+1 CallSpread(currencyPair=C1C2, strike1=K1, strike2=K2, expiry)

+1 BearSpreadCert(currencyPair=C1C2, strike1=K1, strike2=K2, expiry)

+1 PutSpread(currencyPair=C1C2, strike1=K1, strike2=K2, expiry)

+1 OutperformanceCert(currencyPair=C1C2, strike=K, factor=F, expiry)

+F Call(currencyPair=C1C2, strike=K, expiry)

1 Put(currencyPair=C1C2, strike=K, expiry)

+1 CappedOutperformanceCert(currencyPair=C1C2, strike=K1, factor=F, capLevel=K2, expiry)

+F Call(currencyPair=C1C2, strike=K1, expiry)

-1 Put(currencyPair=C1C2, strike=K1, expiry)

-F Call(currencyPair=C1C2, strike=K2, expiry)

+1 BonusCert(currencyPair=C1C2, bonusLevel=K, barrier=B, expiry)

+1 Spot( currencyPair=C1C2)

+1 DaO_Put(currencyPair=C1C2, strike=K, barrier=B)

+1 CappedBonusCert(currencyPair=C1C2, bonusLevel=K1, barrier=B, capLevel=K2, expiry)

+1 Spot( currencyPair=C1C2)

+1 DaO_Put(currencyPair=C1C2, strike=K1, barrier=B)

-1 Call(currencyPair=C1C2, strike=K2, expiry)

+1 TwinWin(currencyPair=C1C2, strike=K, barrier=B, expiry)

+1 Spot( currencyPair=C1C2)

+2 DaO_Put(currencyPair=C1C2, strike=K, barrier=B)

+1 CappedTwinWin(currencyPair=C1C2, strike=K1, barrier=B, capLevel=K2, expiry)

+1 Spot( currencyPair=C1C2)

+2 DaO_Put(currencyPair=C1C2, strike=K1, barrier=B)

-1 Call(currencyPair=C1C2, strike=K2, expiry)

+1 Airbag(currencyPair=C1C2, strike=K1, airbagLevel=K2,, expiry)

+1 Call(currencyPair=C1C2, strike=K1, expiry)

-K1/K2 Put(currencyPair=C1C2, strike=K2, expiry)

Last updated