tx · 22f13Y8yki3QuFz8sik34a4zoPUwtpaN2Ug3kCjWKroy

3MuvmdQpHrmMrszZmrdarf8d95XHbWMcPkM:  -0.05000000 Waves

2022.10.31 15:06 [2296559] smart account 3MuvmdQpHrmMrszZmrdarf8d95XHbWMcPkM > SELF 0.00000000 Waves

{ "type": 13, "id": "22f13Y8yki3QuFz8sik34a4zoPUwtpaN2Ug3kCjWKroy", "fee": 5000000, "feeAssetId": null, "timestamp": 1667218000926, "version": 2, "chainId": 84, "sender": "3MuvmdQpHrmMrszZmrdarf8d95XHbWMcPkM", "senderPublicKey": "7UnFgjKRHSBUfvTnV31mCr4bNSKGpDZqDJCc98qzC2Ut", "proofs": [ "4XzDDrm2PKEvnq1JMjmc3MZ1RBSA73oSCuLgYaMpc9Gyaefrk5eDu3zYLPw695NMB8Ht4kUEEa3ZyndijQB1ak96" ], "script": "base64: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", "height": 2296559, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2xnhuzFekctCcLinYjoLg4uEVBpoZjVotgnk2Egytzvu Next: DBy9stz42rs9A7ynwxNpbWv5DWbzLasy2HkLKGrpXgic Diff:
OldNewDifferences
88 let assetId = base58'HezsdQuRDtzksAYUy97gfhKy7Z1NW2uXYSHA3bgqenNZ'
99
1010 @Callable(i)
11-func switchLongToShort (market,leverage) = if ((i.caller != this))
11+func switchLongToShort (market,amount,leverage) = if ((i.caller != this))
1212 then throw("you are not allowed to change positions!")
1313 else {
1414 let contract = Address(fromBase58String(market))
1515 let closePosition = invoke(contract, "closePosition", nil, nil)
1616 if ((closePosition == closePosition))
1717 then {
18- let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [i.payments[0]])
18+ let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
1919 if ((shortPosition == shortPosition))
2020 then {
2121 let return = assetBalance(this, assetId)
2929
3030
3131 @Callable(i)
32-func switchShortToLong (market,leverage) = if ((i.caller != this))
32+func switchShortToLong (market,amount,leverage) = if ((i.caller != this))
3333 then throw("you are not allowed to switch positions")
3434 else {
3535 let contract = Address(fromBase58String(market))
3636 let closePosition = invoke(contract, "closePosition", nil, nil)
3737 if ((closePosition == closePosition))
3838 then {
39- let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [i.payments[0]])
39+ let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
4040 if ((shortPosition == shortPosition))
4141 then {
4242 let return = assetBalance(this, assetId)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let LONG = 1
55
66 let SHORT = 2
77
88 let assetId = base58'HezsdQuRDtzksAYUy97gfhKy7Z1NW2uXYSHA3bgqenNZ'
99
1010 @Callable(i)
11-func switchLongToShort (market,leverage) = if ((i.caller != this))
11+func switchLongToShort (market,amount,leverage) = if ((i.caller != this))
1212 then throw("you are not allowed to change positions!")
1313 else {
1414 let contract = Address(fromBase58String(market))
1515 let closePosition = invoke(contract, "closePosition", nil, nil)
1616 if ((closePosition == closePosition))
1717 then {
18- let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [i.payments[0]])
18+ let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
1919 if ((shortPosition == shortPosition))
2020 then {
2121 let return = assetBalance(this, assetId)
2222 [ScriptTransfer(i.caller, return, assetId)]
2323 }
2424 else throw("Strict value is not equal to itself.")
2525 }
2626 else throw("Strict value is not equal to itself.")
2727 }
2828
2929
3030
3131 @Callable(i)
32-func switchShortToLong (market,leverage) = if ((i.caller != this))
32+func switchShortToLong (market,amount,leverage) = if ((i.caller != this))
3333 then throw("you are not allowed to switch positions")
3434 else {
3535 let contract = Address(fromBase58String(market))
3636 let closePosition = invoke(contract, "closePosition", nil, nil)
3737 if ((closePosition == closePosition))
3838 then {
39- let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [i.payments[0]])
39+ let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
4040 if ((shortPosition == shortPosition))
4141 then {
4242 let return = assetBalance(this, assetId)
4343 [ScriptTransfer(i.caller, return, assetId)]
4444 }
4545 else throw("Strict value is not equal to itself.")
4646 }
4747 else throw("Strict value is not equal to itself.")
4848 }
4949
5050
5151 @Verifier(tx)
5252 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
5353

github/deemru/w8io/873ac7e 
29.01 ms