tx · H5mLEnSoKc3Xy7poBvUT8eWKT444RgsRmQNqLMvRka9i

3MuvmdQpHrmMrszZmrdarf8d95XHbWMcPkM:  -0.05000000 Waves

2022.11.03 11:04 [2300666] smart account 3MuvmdQpHrmMrszZmrdarf8d95XHbWMcPkM > SELF 0.00000000 Waves

{ "type": 13, "id": "H5mLEnSoKc3Xy7poBvUT8eWKT444RgsRmQNqLMvRka9i", "fee": 5000000, "feeAssetId": null, "timestamp": 1667462682509, "version": 2, "chainId": 84, "sender": "3MuvmdQpHrmMrszZmrdarf8d95XHbWMcPkM", "senderPublicKey": "7UnFgjKRHSBUfvTnV31mCr4bNSKGpDZqDJCc98qzC2Ut", "proofs": [ "4CAyb1RbGpabAQUsFpsRHXJZ97Esiq99LjKYFcEDyH6CEJW9BGChQRcdPdGDYTo8mUdAfpxiJgUxZkznZKWXXcz4" ], "script": "base64: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", "height": 2300666, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AhzMyNmae1gXw7JiK8bK45vgaUBcW6ctzNTZUMCinSvh Next: 76u6SWkgwckGrKYDEKe5QD1GKMLCmJfeLZ8RFbiNBMYk Diff:
OldNewDifferences
1010 let bot = addressFromStringValue("3Mz7a57rADDtRecm7MDRaqUgHMCcGJ2acKf")
1111
1212 @Callable(i)
13-func switchLongToShort (market,amount,leverage) = if ((i.caller != bot))
13+func switchLongToShort (market,leverage) = if ((i.caller != bot))
1414 then throw("you are not allowed to change positions!")
1515 else {
1616 let contract = Address(fromBase58String(market))
1717 let closePosition = invoke(contract, "closePosition", nil, nil)
1818 if ((closePosition == closePosition))
1919 then {
20- let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
20+ let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [i.payments[0]])
2121 if ((shortPosition == shortPosition))
2222 then {
2323 let return = assetBalance(this, assetId)
3131
3232
3333 @Callable(i)
34-func switchShortToLong (market,amount,leverage) = if ((i.caller != bot))
34+func switchShortToLong (market,leverage) = if ((i.caller != bot))
3535 then throw("you are not allowed to switch positions")
3636 else {
3737 let contract = Address(fromBase58String(market))
3838 let closePosition = invoke(contract, "closePosition", nil, nil)
3939 if ((closePosition == closePosition))
4040 then {
41- let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
41+ let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [i.payments[0]])
4242 if ((shortPosition == shortPosition))
4343 then {
4444 let return = assetBalance(this, assetId)
5959 let decreasePosition = invoke(contract, "decreasePosition", [amount, leverage, 1, ""], nil)
6060 if ((decreasePosition == decreasePosition))
6161 then {
62- let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
62+ let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], nil)
6363 if ((shortPosition == shortPosition))
6464 then {
6565 let return = assetBalance(this, assetId)
8080 let decreasePosition = invoke(contract, "decreasePosition", [amount, leverage, 1, ""], nil)
8181 if ((decreasePosition == decreasePosition))
8282 then {
83- let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
83+ let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], nil)
8484 if ((shortPosition == shortPosition))
8585 then {
8686 let return = assetBalance(this, assetId)
9494
9595
9696 @Callable(i)
97-func short (market,amount,leverage) = if ((i.caller != bot))
97+func short (market,leverage) = if ((i.caller != bot))
9898 then throw("you are not allowed to switch positions")
9999 else {
100100 let contract = Address(fromBase58String(market))
107107
108108
109109 @Callable(i)
110-func long (market,amount,leverage) = if ((i.caller != bot))
110+func long (market,leverage) = if ((i.caller != bot))
111111 then throw("you are not allowed to switch positions")
112112 else {
113113 let contract = Address(fromBase58String(market))
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 let bot = addressFromStringValue("3Mz7a57rADDtRecm7MDRaqUgHMCcGJ2acKf")
1111
1212 @Callable(i)
13-func switchLongToShort (market,amount,leverage) = if ((i.caller != bot))
13+func switchLongToShort (market,leverage) = if ((i.caller != bot))
1414 then throw("you are not allowed to change positions!")
1515 else {
1616 let contract = Address(fromBase58String(market))
1717 let closePosition = invoke(contract, "closePosition", nil, nil)
1818 if ((closePosition == closePosition))
1919 then {
20- let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
20+ let shortPosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [i.payments[0]])
2121 if ((shortPosition == shortPosition))
2222 then {
2323 let return = assetBalance(this, assetId)
2424 [ScriptTransfer(i.caller, return, assetId)]
2525 }
2626 else throw("Strict value is not equal to itself.")
2727 }
2828 else throw("Strict value is not equal to itself.")
2929 }
3030
3131
3232
3333 @Callable(i)
34-func switchShortToLong (market,amount,leverage) = if ((i.caller != bot))
34+func switchShortToLong (market,leverage) = if ((i.caller != bot))
3535 then throw("you are not allowed to switch positions")
3636 else {
3737 let contract = Address(fromBase58String(market))
3838 let closePosition = invoke(contract, "closePosition", nil, nil)
3939 if ((closePosition == closePosition))
4040 then {
41- let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
41+ let shortPosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [i.payments[0]])
4242 if ((shortPosition == shortPosition))
4343 then {
4444 let return = assetBalance(this, assetId)
4545 [ScriptTransfer(i.caller, return, assetId)]
4646 }
4747 else throw("Strict value is not equal to itself.")
4848 }
4949 else throw("Strict value is not equal to itself.")
5050 }
5151
5252
5353
5454 @Callable(i)
5555 func decreaseShort (market,amount,leverage) = if ((i.caller != bot))
5656 then throw("you are not allowed to switch positions")
5757 else {
5858 let contract = Address(fromBase58String(market))
5959 let decreasePosition = invoke(contract, "decreasePosition", [amount, leverage, 1, ""], nil)
6060 if ((decreasePosition == decreasePosition))
6161 then {
62- let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
62+ let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], nil)
6363 if ((shortPosition == shortPosition))
6464 then {
6565 let return = assetBalance(this, assetId)
6666 [ScriptTransfer(i.caller, return, assetId)]
6767 }
6868 else throw("Strict value is not equal to itself.")
6969 }
7070 else throw("Strict value is not equal to itself.")
7171 }
7272
7373
7474
7575 @Callable(i)
7676 func decreaseLong (market,amount,leverage) = if ((i.caller != bot))
7777 then throw("you are not allowed to switch positions")
7878 else {
7979 let contract = Address(fromBase58String(market))
8080 let decreasePosition = invoke(contract, "decreasePosition", [amount, leverage, 1, ""], nil)
8181 if ((decreasePosition == decreasePosition))
8282 then {
83- let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], [AttachedPayment(assetId, (amount * 1000000))])
83+ let shortPosition = invoke(contract, "removeMargin", [amount, leverage, 1, ""], nil)
8484 if ((shortPosition == shortPosition))
8585 then {
8686 let return = assetBalance(this, assetId)
8787 [ScriptTransfer(i.caller, return, assetId)]
8888 }
8989 else throw("Strict value is not equal to itself.")
9090 }
9191 else throw("Strict value is not equal to itself.")
9292 }
9393
9494
9595
9696 @Callable(i)
97-func short (market,amount,leverage) = if ((i.caller != bot))
97+func short (market,leverage) = if ((i.caller != bot))
9898 then throw("you are not allowed to switch positions")
9999 else {
100100 let contract = Address(fromBase58String(market))
101101 let decreasePosition = invoke(contract, "increasePosition", [SHORT, leverage, 1, ""], [i.payments[0]])
102102 if ((decreasePosition == decreasePosition))
103103 then nil
104104 else throw("Strict value is not equal to itself.")
105105 }
106106
107107
108108
109109 @Callable(i)
110-func long (market,amount,leverage) = if ((i.caller != bot))
110+func long (market,leverage) = if ((i.caller != bot))
111111 then throw("you are not allowed to switch positions")
112112 else {
113113 let contract = Address(fromBase58String(market))
114114 let decreasePosition = invoke(contract, "increasePosition", [LONG, leverage, 1, ""], [i.payments[0]])
115115 if ((decreasePosition == decreasePosition))
116116 then nil
117117 else throw("Strict value is not equal to itself.")
118118 }
119119
120120
121121 @Verifier(tx)
122122 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
123123

github/deemru/w8io/873ac7e 
28.96 ms