State-contigent claims - Option Pricing

Hello everyone,

currently I am dealing with state contigent claims in a very basic setup.

I have 4 different securities and 3 possible states that can occure in the future.


The securities are currently traded at the market prices of p(x)=(0.5 ; 1.6 ; 3.0 ; 2.7)

First I checked, if the prices are arbitrage free. --> it is arbitrage free and the market is complete.
So, the next step would be to determine the cash flows generated by a call option on Security d with a strike price of 2.5 as well the market price of the call option.

The first idea what I got was to determine arrow-securities for each state.

arrow security 1 =(1,0,0); price=0.1
arrow security 2 =(0,1,0); price=0.2
arrow security 3 =(0,0,1); price=0.5

First i have to determine the cash flows of the call-option for security d.
My Idea was:
Cashflow in State 1 for the option: 3 - 2.5 = 0.5
Cashflow in State 2 for the option: 2 - 2.5 = 0 (out of the money)
Cashflow in State 1 for the option: 4 - 2.5 = 1.5

So i generated this new call option vector with cashflow (0.5 , 0 , 1.5)
Now i replicate this vecor with the arrow securities (half of arrow1 and 1.5 of arrow 3)
Multiplied this relation with each arrow price gives me a price of 0.8 for the cash flow vetor (0.5 , 0 , 1.5)

Using the same method to calculate a put option leads to a price which violate the put-call parity. So, I assumed my approach was wrong.

Could you please give me some advice on this problem?

Thanks in advance!