IP Library Patent Application 19530698
Patent Application
App. No. 19/530,698

DYNAMIC MULTI-PATH TRANSFERS

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
19/530,698
Abstract

A lens array structure comprises two birefringent lens arrays arranged in series, both being capable of operating to direct incident light of one polarisation into a respective directional distribution and to have substantially no effect on incident light of a polarisation perpendicular to said one polarisation. The lens arrays are relatively oriented such that incident light of two perpendicular polarisation components are directed into a directional distribution by a respective one of the birefringent lens arrays and not affected by other one of the birefringent lens arrays. Thus control of the polarisation allows switching between the effects of the two lens arrays. To allow switching into a third mode in which neither of the lens arrays has effect, one of the lens arrays may be active. The lens structure may be employed in a display apparatus to provide a switchable directional display.

Claims (62)

1 . (canceled)

2 . A computer-implemented method performed by a swap platform, the method comprising:

receiving, from a user device, an order to swap a starting amount of a source asset for a destination asset;

obtaining, from one or more electronic data sources, current asset data and current exchange data for a plurality of assets and a plurality of exchanges, the current exchange data comprising at least one of liquidity data, order book data, exchange rate data, transfer volume data, or transaction fee data;

selecting, based on the current asset data and the current exchange data, a subset of intermediate assets of the plurality of assets and a subset of exchanges of the plurality of exchanges for the order;

generating, based on the subset of intermediate assets and the subset of exchanges, a graph data structure comprising:

a plurality of nodes representing the source asset, the destination asset, and the subset of intermediate assets; and

a plurality of edges representing transfers supported by one or more exchanges of the subset of exchanges;

determining, from the graph data structure, a candidate multi-route transfer comprising:

a plurality of transfer paths from the source asset to the destination asset;

a path allocation specifying a respective portion of the starting amount to route through each transfer path of the plurality of transfer paths; and

for at least one transfer path of the plurality of transfer paths, an exchange allocation specifying respective portions of an input asset to route through different exchanges for a transfer between neighboring nodes of the graph data structure, the input asset comprising the source asset or an intermediate asset of the subset of intermediate assets;

assigning a validity interval to the candidate multi-route transfer based at least in part on a time at which the current asset data or the current exchange data was obtained;

transmitting, to the user device, executable transfer data representing the candidate multi-route transfer, the executable transfer data comprising the plurality of transfer paths, the path allocation, the exchange allocation, and the validity interval; and

causing execution of the candidate multi-route transfer in response to receiving, from the user device during the validity interval, a user input accepting the executable transfer data.

3 . The method of claim 2 , wherein the validity interval is less than two minutes.

4 . The method of claim 2 , wherein the validity interval is based on a volatility measure associated with at least one of the source asset, the destination asset, or an intermediate asset of the subset of intermediate assets.

5 . The method of claim 2 , wherein the executable transfer data further comprises a minimum amount of the destination asset to be received.

6 . The method of claim 5 , wherein causing execution of the candidate multi-route transfer comprises preventing execution when an expected amount of the destination asset is less than the minimum amount.

7 . The method of claim 2 , wherein causing execution of the candidate multi-route transfer comprises transmitting transaction parameters to one or more smart contracts.

8 . The method of claim 7 , wherein the one or more smart contracts revert execution of the candidate multi-route transfer when a transfer corresponding to one of the plurality of transfer paths fails.

9 . The method of claim 2 , wherein determining the candidate multi-route transfer comprises accounting for transaction fees associated with the plurality of transfer paths.

10 . The method of claim 2 , wherein the exchange allocation specifies different non-zero portions of the input asset to route through at least two decentralized exchanges for the transfer between neighboring nodes.

11 . The method of claim 2 , wherein selecting the subset of intermediate assets comprises selecting an intermediate asset based on liquidity data for the intermediate asset.

12 . The method of claim 2 , wherein selecting the subset of exchanges comprises selecting an exchange based on transaction fee data for the exchange.

13 . One or more non-transitory computer-readable storage media storing instructions that, when executed by one or more processors of a swap platform, cause the swap platform to perform operations comprising:

receiving, from a user device, an order to swap a starting amount of a source asset for a destination asset;

obtaining, from one or more electronic data sources, current asset data and current exchange data for a plurality of assets and a plurality of exchanges, the current exchange data comprising at least one of liquidity data, order book data, exchange rate data, transfer volume data, or transaction fee data;

selecting, based on the current asset data and the current exchange data, a subset of intermediate assets of the plurality of assets and a subset of exchanges of the plurality of exchanges for the order;

generating, based on the subset of intermediate assets and the subset of exchanges, a graph data structure comprising:

a plurality of nodes representing the source asset, the destination asset, and the subset of intermediate assets; and

a plurality of edges representing transfers supported by one or more exchanges of the subset of exchanges;

determining, from the graph data structure, a candidate multi-route transfer comprising:

a plurality of transfer paths from the source asset to the destination asset;

a path allocation specifying a respective portion of the starting amount to route through each transfer path of the plurality of transfer paths; and

for at least one transfer path of the plurality of transfer paths, an exchange allocation specifying respective portions of an input asset to route through different exchanges for a transfer between neighboring nodes of the graph data structure, the input asset comprising the source asset or an intermediate asset of the subset of intermediate assets;

assigning a validity interval to the candidate multi-route transfer based at least in part on a time at which the current asset data or the current exchange data was obtained;

transmitting, to the user device, executable transfer data representing the candidate multi-route transfer, the executable transfer data comprising the plurality of transfer paths, the path allocation, the exchange allocation, and the validity interval; and

causing execution of the candidate multi-route transfer in response to receiving, from the user device during the validity interval, a user input accepting the executable transfer data.

14 . The one or more non-transitory computer-readable storage media of claim 13 , wherein the validity interval is less than two minutes.

15 . The one or more non-transitory computer-readable storage media of claim 13 , wherein the validity interval is based on a volatility measure associated with at least one of the source asset, the destination asset, or an intermediate asset of the subset of intermediate assets.

16 . The one or more non-transitory computer-readable storage media of claim 13 , wherein the executable transfer data further comprises a minimum amount of the destination asset to be received.

17 . The one or more non-transitory computer-readable storage media of claim 16 , wherein causing execution of the candidate multi-route transfer comprises preventing execution when an expected amount of the destination asset is less than the minimum amount.

18 . The one or more non-transitory computer-readable storage media of claim 13 , wherein causing execution of the candidate multi-route transfer comprises transmitting transaction parameters to one or more smart contracts.

19 . The one or more non-transitory computer-readable storage media of claim 18 , wherein the one or more smart contracts revert execution of the candidate multi-route transfer when a transfer corresponding to one of the plurality of transfer paths fails.

20 . The one or more non-transitory computer-readable storage media of claim 19 , wherein determining the candidate multi-route transfer comprises accounting for transaction fees associated with the plurality of transfer paths.

21 . A swap platform system comprising:

one or more processors; and

one or more non-transitory computer-readable storage media storing instructions that, when executed by the one or more processors, cause the swap platform system to perform operations comprising:

receiving, from a user device, an order to swap a starting amount of a source asset for a destination asset;

obtaining, from one or more electronic data sources, current asset data and current exchange data for a plurality of assets and a plurality of exchanges, the current exchange data comprising at least one of liquidity data, order book data, exchange rate data, transfer volume data, or transaction fee data;

selecting, based on the current asset data and the current exchange data, a subset of intermediate assets of the plurality of assets and a subset of exchanges of the plurality of exchanges for the order;

generating, based on the subset of intermediate assets and the subset of exchanges, a graph data structure comprising:

a plurality of nodes representing the source asset, the destination asset, and the subset of intermediate assets; and

a plurality of edges representing transfers supported by one or more exchanges of the subset of exchanges;

determining, from the graph data structure, a candidate multi-route transfer comprising:

a plurality of transfer paths from the source asset to the destination asset;

a path allocation specifying a respective portion of the starting amount to route through each transfer path of the plurality of transfer paths; and

for at least one transfer path of the plurality of transfer paths, an exchange allocation specifying respective portions of an input asset to route through different exchanges for a transfer between neighboring nodes of the graph data structure, the input asset comprising the source asset or an intermediate asset of the subset of intermediate assets;

assigning a validity interval to the candidate multi-route transfer based at least in part on a time at which the current asset data or the current exchange data was obtained;

transmitting, to the user device, executable transfer data representing the candidate multi-route transfer, the executable transfer data comprising the plurality of transfer paths, the path allocation, the exchange allocation, and the validity interval; and

causing execution of the candidate multi-route transfer in response to receiving, from the user device during the validity interval, a user input accepting the executable transfer data.