A broker makes a profit by matching buyer's demands with seller's supplies: the broker uses a variety of methods to achieve a best price between these parties, and typically makes a profit either by taking a commission fee from any completed deal, or by varying the broker's spread, or some combination of fees and spread. The spread is the difference between the price at which a broker buys from sellers and the price at which it sells to buyers.
In a commodity market where goods cannot be differentiated between suppliers on any basis other than price, all that matters to the buyers is that they pay a price they are comfortable with, and all that matters to the sellers is that they receive a price they are also comfortable with [11]; typically the broker's fee and/or spread are tolerated by the buyers and sellers because the broker acts as a provider of liquidity: the buyers and sellers do not have to spend time finding potential counterparties to their transactions and then negotiating with them, and they do not have to worry about there ever being no counterparties to trade with.
The broker aims to satisfy these parties' requirements while ensuring that he or she makes a profit. In this work, we focus on a simple way of achieving this by purchasing advance rights or obligations on resources, via derivative contracts. When the derivatives contract matures and the corresponding resources are delivered, the broker can then sell the resources to clients who need to use them: in this context, the broker is using the derivatives as a mechanism for hedging risk in the uncertainty over future demand and supply.
The broker's skill lies in forecasting when to purchase the resources in advance and when to simply provide their clients with resources purchased directly from the spot market or from the broker's own private stock of resources.
A simple broker model consists of two stages. In the first stage, the broker plans what to buy. The broker will make a forecast of demand, determine what and when to buy and then will make any advanced purchases from the provider.
In the second stage, clients approach the broker for a resource. If the broker has previously purchased a resource, they can sell it to the client for a profit if the cost is less than the client wants to pay. If not, the broker must purchase an on-demand instance and provide it to the client.
But how can the broker effectively predict usage? Wu, Zhang, and Huberman suggested a two-period model (which we refer to hereafter as the WZH model) for resource reservation in which in the first period the user knows her probability of using the resource in the second period, and purchases a reservation whose price depends on that probability [12].
Consider N users who live for two discrete periods. Each user can purchase a unit of resource from a service provider to use in the second period, either at a discounted rate of 1 in Period 1, or at higher price C, where C > 1, in Period 2. In Period 1, each user only knows the probability that they will need the resource in Period 2--it is not known for certain until the next period.
A third agent, the Coordinator, is introduced who makes a profit by aggregating the users' probabilities and absorbing risk through a two period game described below:
-
1.
Period 1: Each user i submits to the Coordinator a probability, q
i
, which does not have to be the real probability, p
i
, that they will require a unit of resource in Period 2.
-
2.
Period 1: The Coordinator reserves q
i
n
i
units of resource from the resource provider at the discount price for use in Period 2, where n
i
is the number of units of resource required by each user. For simplicity in this simulation, n
i
= 1 for all users.
-
3.
Period 2: The Coordinator delivers the reserved resources to users who claim them. If the amount reserved by the Coordinator is not enough to cover the demand, the Coordinator purchases more from the resource provider at the higher unit price C.
-
4.
Period 2: User i pays:
f(q
i
) if resource is required
g(q
i
) if resource is not required
The contract can be regarded as an option if g(q
i
) is paid in Period 1 (i.e. as a premium), and f(q
i
)-g(q
i
) is paid in Period 2 (i.e. as a price) should the resource be required. In Period 1, the resource is reserved, but the user is not under any obligation to purchase.
Wu et al. showed that if the following conditions could be met, the Coordinator would make a profit:
-
Condition A: Each user prefers to use the service provided by the Coordinator, rather than to deal with the resource provider (for example, by achieving cost-reduction)
-
Condition B: The Coordinator can make a profit by providing the service.
The following truth-telling conditions are not completely necessary, but are useful, for conditions A and B to hold:
-
Condition T1 (truth-telling): Each user submits his true probability in Period 1 so that he expects to pay the lowest amount later.
-
Condition T2 (truth-telling): When a user does not need a resource in Period 2, it is reported to the Coordinator in the same period.
The following specific case was proved to meet these conditions, where k, a constant chosen to alter the price paid by the customer, is set to 1.5 and C is set to 2:
In previous work [13], we validated Wu et al.'s claims though simulation experiments and showed that a simple evolutionary optimization process operating on an initially maximally dishonest pool of users results in the pool of users becoming more honest over time when interacting with the WZH system.
The WZH model can be used to forecast demand as it encourages users to submit an honest estimate of future usage by rewarding them with a reduction in cost over time, compared to buying direct from the provider at the higher rate C.
In our model, we refer to the Coordinator as the broker, as the Coordinator performs a role traditionally performed by a financial broker. In the first period, the broker asks each user i to submit a probability p
i
in advance that they will use a resource, and pays a premium g(q
i
).
The broker sums these probabilities, which is the forecast of how many resources will be required in the next period.
Once a forecast has been made, the broker must make a decision on whether to hedge the risk and invest in a reserved instance, or to wait until the next period and buy an on-demand instance. The broker does this by comparing the performance of a reserved instance over the past instance term and comparing it to the amount of capacity it currently has available through reserved instances over the same period in the future. It considers whether another purchased reserved instance will be suitably utilised such that it gives better returns than delaying the purchase and buying on-demand later. The broker does this by using a variable called the threshold--if the resource is likely to be used more than the threshold it invests; if not, it does not. In the rest of this paper we denote the threshold by θ.
The margin resource utilisation (i.e. the likely utilisation of an additional reserved instance) is calculated as follows:
Previous demand profile
A
= [d
t-36........
d
t
]
Future capacity profile
B
= [c
t........
c
t+36
]
Deficit profile
C
=
A
-
B
For each resource required, the
Marginal Resource Utilisation (MRU) is the ratio of items in C > 0, and the key decision is then:
If MRU > θ: Buy reserved instance and therefore increase current capacity profile;
If MRU < = θ: Do not invest, "wait and see".
In the second period, users choose if they should execute their right to use the resource. If they wish to, they pay f(q
i
)-g(q
i
) to use the resource.
The broker gives the user access to one of their previously purchased reserved instances for the full calendar month. If the broker has not purchased enough, it buys an on-demand resource from the provider. Potentially, the broker could also offer fractions of months for a reduced price, but in our model here, we only offer full-month resources.