tx · 2Rb38e2X3qY7x3iiJdqKwwMzAojkM86C23MPengbcK81
3MvQVj21fwPXbyXsrVDV2Sf639TcWTsaxmC: -0.09000000 Waves
2020.01.07 16:16 [843532] smart account 3MvQVj21fwPXbyXsrVDV2Sf639TcWTsaxmC > SELF 0.00000000 Waves
{
"type": 13,
"id": "2Rb38e2X3qY7x3iiJdqKwwMzAojkM86C23MPengbcK81",
"fee": 9000000,
"feeAssetId": null,
"timestamp": 1578402992884,
"version": 1,
"sender": "3MvQVj21fwPXbyXsrVDV2Sf639TcWTsaxmC",
"senderPublicKey": "GfU9G8BJcrUfL2H2QthDHbeLHThimafNuKPuDQm9wbzr",
"proofs": [
"9DbTRdjwe1LGyGSXxJqPaUqZDLgobuWo5QjCepbvJVB6VcYveaBU4sq8xfToaY5XW9YgBwZdmmc8WU17Z7p3DSt"
],
"script": "base64:AAIDAAAAAAAAAAwIARIICgYBAQEBAQEAAAADAAAAAAZGQUNUT1IAAAAAAAX14QAAAAAADkZBQ1RPUkRFQ0lNQUxTAAAAAAAAAAAIAAAAAAFFAAAAAAAQM8TWAAAAAQAAAAFpAQAAABVjb3hSb3NzUnViaW5zdGVpbkNhbGwAAAAGAAAAAVQAAAABUwAAAAFLAAAAAXIAAAAFc2lnbWEAAAABbgQAAAAGZGVsdGFUCQAAawAAAAMFAAAAAVQFAAAABkZBQ1RPUgkAAGgAAAACAAAAAAAAAAFtBQAAAAFuBAAAAApzcXJ0RGVsdGFUCQAAbAAAAAYFAAAABmRlbHRhVAUAAAAORkFDVE9SREVDSU1BTFMAAAAAAAAAAAUAAAAAAAAAAAEFAAAADkZBQ1RPUkRFQ0lNQUxTBQAAAAZIQUxGVVAEAAAAAnVwCQAAbAAAAAYFAAAAAUUFAAAADkZBQ1RPUkRFQ0lNQUxTCQAAawAAAAMFAAAABXNpZ21hBQAAAApzcXJ0RGVsdGFUAAAAAAAAAABkBQAAAA5GQUNUT1JERUNJTUFMUwUAAAAORkFDVE9SREVDSU1BTFMFAAAABkhBTEZVUAQAAAAEZG93bgkAAGkAAAACAAAAAAAAAAABBQAAAAJ1cAQAAAACZGYJAABsAAAABgUAAAABRQAAAAAAAAAABQkAAGgAAAACCQAAaQAAAAIJAQAAAAEtAAAAAQUAAAABcgAAAAAAAAAAZAUAAAAGZGVsdGFUAAAAAAAAAAAIAAAAAAAAAAAIBQAAAAZIQUxGVVAEAAAAA3BVcAkAAGkAAAACCQAAaAAAAAIJAABsAAAABgUAAAABRQAAAAAAAAAABQkAAGgAAAACCQAAaQAAAAIFAAAAAXIAAAAAAAAAAGQFAAAABmRlbHRhVAAAAAAAAAAACAAAAAAAAAAACAUAAAAGSEFMRlVQBQAAAARkb3duCQAAZQAAAAIFAAAAAnVwBQAAAARkb3duBAAAAAVwRG93bgkAAGUAAAACAAAAAAAAAAABBQAAAANwVXAJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAABmRlbHRhVAUAAAAGZGVsdGFUCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAApzcXJ0RGVsdGFUBQAAAApzcXJ0RGVsdGFUCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAJ1cAUAAAACdXAFAAAAA25pbAAAAABKzgUy",
"chainId": 84,
"height": 843532,
"spentComplexity": 0
}
View: original | compacted
Prev: CS396f8qVfc2Rp5xFDuZUuBkCxXxNf4Njm6dXh6qnRSc
Next: HyNT16a1Ad1u9P5dqcPL9Swd6wo2SGUc5oZW7p9wUndF
Diff:
Old | New | | Differences |
---|
5 | 5 | | |
---|
6 | 6 | | let FACTORDECIMALS = 8 |
---|
7 | 7 | | |
---|
| 8 | + | let E = 271828182 |
---|
| 9 | + | |
---|
8 | 10 | | @Callable(i) |
---|
9 | 11 | | func coxRossRubinsteinCall (T,S,K,r,sigma,n) = { |
---|
10 | | - | let e = 271828 |
---|
11 | 12 | | let deltaT = fraction(T, FACTOR, (365 * n)) |
---|
12 | 13 | | let sqrtDeltaT = pow(deltaT, FACTORDECIMALS, 5, 1, FACTORDECIMALS, HALFUP) |
---|
13 | | - | let up = pow(e, 5, (sigma * sqrtDeltaT), 8, 8, HALFUP) |
---|
| 14 | + | let up = pow(E, FACTORDECIMALS, fraction(sigma, sqrtDeltaT, 100), FACTORDECIMALS, FACTORDECIMALS, HALFUP) |
---|
14 | 15 | | let down = (1 / up) |
---|
15 | | - | let df = pow(e, 5, ((-(r) / 100) * deltaT), 8, 8, HALFUP) |
---|
16 | | - | let pUp = ((pow(e, 5, ((r / 100) * deltaT), 8, 8, HALFUP) * down) / (up - down)) |
---|
| 16 | + | let df = pow(E, 5, ((-(r) / 100) * deltaT), 8, 8, HALFUP) |
---|
| 17 | + | let pUp = ((pow(E, 5, ((r / 100) * deltaT), 8, 8, HALFUP) * down) / (up - down)) |
---|
17 | 18 | | let pDown = (1 - pUp) |
---|
18 | | - | WriteSet([DataEntry("deltaT", deltaT), DataEntry("sqrtDeltaT", sqrtDeltaT)]) |
---|
| 19 | + | WriteSet([DataEntry("deltaT", deltaT), DataEntry("sqrtDeltaT", sqrtDeltaT), DataEntry("up", up)]) |
---|
19 | 20 | | } |
---|
20 | 21 | | |
---|
21 | 22 | | |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 3 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | 4 | | let FACTOR = 100000000 |
---|
5 | 5 | | |
---|
6 | 6 | | let FACTORDECIMALS = 8 |
---|
7 | 7 | | |
---|
| 8 | + | let E = 271828182 |
---|
| 9 | + | |
---|
8 | 10 | | @Callable(i) |
---|
9 | 11 | | func coxRossRubinsteinCall (T,S,K,r,sigma,n) = { |
---|
10 | | - | let e = 271828 |
---|
11 | 12 | | let deltaT = fraction(T, FACTOR, (365 * n)) |
---|
12 | 13 | | let sqrtDeltaT = pow(deltaT, FACTORDECIMALS, 5, 1, FACTORDECIMALS, HALFUP) |
---|
13 | | - | let up = pow(e, 5, (sigma * sqrtDeltaT), 8, 8, HALFUP) |
---|
| 14 | + | let up = pow(E, FACTORDECIMALS, fraction(sigma, sqrtDeltaT, 100), FACTORDECIMALS, FACTORDECIMALS, HALFUP) |
---|
14 | 15 | | let down = (1 / up) |
---|
15 | | - | let df = pow(e, 5, ((-(r) / 100) * deltaT), 8, 8, HALFUP) |
---|
16 | | - | let pUp = ((pow(e, 5, ((r / 100) * deltaT), 8, 8, HALFUP) * down) / (up - down)) |
---|
| 16 | + | let df = pow(E, 5, ((-(r) / 100) * deltaT), 8, 8, HALFUP) |
---|
| 17 | + | let pUp = ((pow(E, 5, ((r / 100) * deltaT), 8, 8, HALFUP) * down) / (up - down)) |
---|
17 | 18 | | let pDown = (1 - pUp) |
---|
18 | | - | WriteSet([DataEntry("deltaT", deltaT), DataEntry("sqrtDeltaT", sqrtDeltaT)]) |
---|
| 19 | + | WriteSet([DataEntry("deltaT", deltaT), DataEntry("sqrtDeltaT", sqrtDeltaT), DataEntry("up", up)]) |
---|
19 | 20 | | } |
---|
20 | 21 | | |
---|
21 | 22 | | |
---|