tx · 4VxCfsXHVmSdm8TuMRzeAnaLb456cRmVCUqnAWJD4NTK

3MvQVj21fwPXbyXsrVDV2Sf639TcWTsaxmC:  -0.09000000 Waves

2020.01.08 13:07 [844800] smart account 3MvQVj21fwPXbyXsrVDV2Sf639TcWTsaxmC > SELF 0.00000000 Waves

{ "type": 13, "id": "4VxCfsXHVmSdm8TuMRzeAnaLb456cRmVCUqnAWJD4NTK", "fee": 9000000, "feeAssetId": null, "timestamp": 1578478074251, "version": 1, "sender": "3MvQVj21fwPXbyXsrVDV2Sf639TcWTsaxmC", "senderPublicKey": "GfU9G8BJcrUfL2H2QthDHbeLHThimafNuKPuDQm9wbzr", "proofs": [ "5e2AKoU1oHfFdND2D6aTUxWLUQrAxtJUVLU4yzwfoHjy1mTSKWVTBFjHcc6k8DnwvkumHRfGGsaTKd319ySCqvKr" ], "script": "base64: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", "chainId": 84, "height": 844800, "spentComplexity": 0 } View: original | compacted Prev: aDyZ6YZFZeeBPYC7n1qrLxvSULnpJCrhYUMxCdEbkD8 Next: 2pnV1R1VEXUwXYsRxW6BCQDfyKjc1AzCdtauXrjnaN6D Diff:
OldNewDifferences
2626 let thirdProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 2, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 2, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
2727 let fourthProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 1, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 3, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
2828 let fifthProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 0, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 4, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
29- let firstInnerPrice = if ((firstProjectedPrice > S))
30- then (firstProjectedPrice - (S * FACTOR))
29+ let firstInnerPrice = if ((firstProjectedPrice > K))
30+ then (firstProjectedPrice - (K * FACTOR))
3131 else 0
32- let secondInnerPrice = if ((secondProjectedPrice > S))
33- then (secondProjectedPrice - (S * FACTOR))
32+ let secondInnerPrice = if ((secondProjectedPrice > K))
33+ then (secondProjectedPrice - (K * FACTOR))
3434 else 0
35- let thirdInnerPrice = if ((thirdProjectedPrice > S))
36- then (thirdProjectedPrice - (S * FACTOR))
35+ let thirdInnerPrice = if ((thirdProjectedPrice > K))
36+ then (thirdProjectedPrice - (K * FACTOR))
3737 else 0
38- let fourthInnerPrice = if ((fourthProjectedPrice > S))
39- then (fourthProjectedPrice - S)
38+ let fourthInnerPrice = if ((fourthProjectedPrice > K))
39+ then (fourthProjectedPrice - K)
4040 else 0
41- let fifthInnerPrice = if ((fifthProjectedPrice > S))
42- then (fifthProjectedPrice - S)
41+ let fifthInnerPrice = if ((fifthProjectedPrice > K))
42+ then (fifthProjectedPrice - K)
4343 else 0
4444 WriteSet([DataEntry("deltaT", deltaT), DataEntry("sqrtDeltaT", sqrtDeltaT), DataEntry("up", up), DataEntry("down", down), DataEntry("df", df), DataEntry("pUp", pUp), DataEntry("pDown", pDown), DataEntry("firstInnerPrice", firstInnerPrice), DataEntry("secondInnerPrice", secondInnerPrice), DataEntry("thirdInnerPrice", thirdInnerPrice), DataEntry("fourthInnerPrice", fourthInnerPrice), DataEntry("fifthInnerPrice", fifthInnerPrice)])
4545 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let FACTOR = 1000000
55
66 let FACTORDECIMALS = 6
77
88 let E = 2718281
99
1010 func calculateInnerValues (a,innerValues) = if ((a > 1000))
1111 then a :: innerValues
1212 else innerValues
1313
1414
1515 @Callable(i)
1616 func coxRossRubinsteinCall (T,S,K,r,sigma,n) = {
1717 let deltaT = fraction(T, FACTOR, (365 * n))
1818 let sqrtDeltaT = pow(deltaT, FACTORDECIMALS, 5, 1, FACTORDECIMALS, HALFUP)
1919 let up = pow(E, FACTORDECIMALS, fraction(sigma, sqrtDeltaT, 100), FACTORDECIMALS, FACTORDECIMALS, HALFUP)
2020 let down = fraction(1, (FACTOR * FACTOR), up)
2121 let df = pow(E, FACTORDECIMALS, fraction(-(r), deltaT, 100), FACTORDECIMALS, FACTORDECIMALS, HALFUP)
2222 let pUp = fraction((pow(E, FACTORDECIMALS, fraction(r, deltaT, 100), FACTORDECIMALS, FACTORDECIMALS, HALFUP) - down), FACTOR, (up - down))
2323 let pDown = (FACTOR - pUp)
2424 let firstProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 4, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 0, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
2525 let secondProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 3, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 1, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
2626 let thirdProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 2, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 2, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
2727 let fourthProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 1, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 3, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
2828 let fifthProjectedPrice = fraction(((S * pow(up, FACTORDECIMALS, 0, 0, FACTORDECIMALS, HALFUP)) * pow(down, FACTORDECIMALS, 4, 0, FACTORDECIMALS, HALFUP)), 1, FACTOR)
29- let firstInnerPrice = if ((firstProjectedPrice > S))
30- then (firstProjectedPrice - (S * FACTOR))
29+ let firstInnerPrice = if ((firstProjectedPrice > K))
30+ then (firstProjectedPrice - (K * FACTOR))
3131 else 0
32- let secondInnerPrice = if ((secondProjectedPrice > S))
33- then (secondProjectedPrice - (S * FACTOR))
32+ let secondInnerPrice = if ((secondProjectedPrice > K))
33+ then (secondProjectedPrice - (K * FACTOR))
3434 else 0
35- let thirdInnerPrice = if ((thirdProjectedPrice > S))
36- then (thirdProjectedPrice - (S * FACTOR))
35+ let thirdInnerPrice = if ((thirdProjectedPrice > K))
36+ then (thirdProjectedPrice - (K * FACTOR))
3737 else 0
38- let fourthInnerPrice = if ((fourthProjectedPrice > S))
39- then (fourthProjectedPrice - S)
38+ let fourthInnerPrice = if ((fourthProjectedPrice > K))
39+ then (fourthProjectedPrice - K)
4040 else 0
41- let fifthInnerPrice = if ((fifthProjectedPrice > S))
42- then (fifthProjectedPrice - S)
41+ let fifthInnerPrice = if ((fifthProjectedPrice > K))
42+ then (fifthProjectedPrice - K)
4343 else 0
4444 WriteSet([DataEntry("deltaT", deltaT), DataEntry("sqrtDeltaT", sqrtDeltaT), DataEntry("up", up), DataEntry("down", down), DataEntry("df", df), DataEntry("pUp", pUp), DataEntry("pDown", pDown), DataEntry("firstInnerPrice", firstInnerPrice), DataEntry("secondInnerPrice", secondInnerPrice), DataEntry("thirdInnerPrice", thirdInnerPrice), DataEntry("fourthInnerPrice", fourthInnerPrice), DataEntry("fifthInnerPrice", fifthInnerPrice)])
4545 }
4646
4747

github/deemru/w8io/873ac7e 
43.15 ms