Lean
$LEAN_TAG$
ICurrencyConversion.cs
1
/*
2
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
3
* Lean Algorithmic Trading Engine v2.0. Copyright 2014 QuantConnect Corporation.
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
8
*
9
* Unless required by applicable law or agreed to in writing, software
10
* distributed under the License is distributed on an "AS IS" BASIS,
11
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
* See the License for the specific language governing permissions and
13
* limitations under the License.
14
*
15
*/
16
17
using
System;
18
using
System.Collections.Generic;
19
20
namespace
QuantConnect.Securities.CurrencyConversion
21
{
22
/// <summary>
23
/// Represents a type capable of calculating the conversion rate between two currencies
24
/// </summary>
25
public
interface
ICurrencyConversion
26
{
27
/// <summary>
28
/// Event fired when the conversion rate is updated
29
/// </summary>
30
event
EventHandler<decimal>
ConversionRateUpdated
;
31
32
/// <summary>
33
/// The currency this conversion converts from
34
/// </summary>
35
string
SourceCurrency
{
get
; }
36
37
/// <summary>
38
/// The currency this conversion converts to
39
/// </summary>
40
string
DestinationCurrency
{
get
; }
41
42
/// <summary>
43
/// The current conversion rate between <see cref="SourceCurrency"/> and <see cref="DestinationCurrency"/>
44
/// </summary>
45
decimal
ConversionRate
{
get
;
set
; }
46
47
/// <summary>
48
/// The securities which the conversion rate is based on
49
/// </summary>
50
IEnumerable<Security>
ConversionRateSecurities
{
get
; }
51
52
/// <summary>
53
/// Updates the internal conversion rate based on the latest data, and returns the new conversion rate
54
/// </summary>
55
/// <returns>The new conversion rate</returns>
56
void
Update
();
57
}
58
}
Common
Securities
CurrencyConversion
ICurrencyConversion.cs
Generated by
1.8.17