-
Notifications
You must be signed in to change notification settings - Fork 165
/
Copy pathKeyTypes.h
67 lines (58 loc) · 2.6 KB
/
KeyTypes.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/************************************************************************
* Copyright(c) 2009, One Unified. All rights reserved. *
* *
* This file is provided as is WITHOUT ANY WARRANTY *
* without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
* *
* This software may not be used nor distributed without proper license *
* agreement. *
* *
* See the file LICENSE.txt for redistribution information. *
************************************************************************/
#pragma once
#include <string>
#include <cstdint>
namespace ou { // One Unified
namespace tf { // TradeFrame
namespace keytypes { // KeyTypes
// InstrumentManager
using idInstrument_t = std::string;
using idExchange_t = std::string;
// AccountManager
using idAccountAdvisor_t = std::string;
using idAccountOwner_t = std::string;
using idAccount_t = std::string;
// CashManager
//typedef Currency::type idCashAccount_t;
using idCashTransaction_t = std::int64_t;
using idCurrency_t = std::string; // three character designation
// ProviderManager
//typedef boost::uint16_t idProvider_t; // identifies instance of a provider
using idProvider_t = idAccount_t;
enum eidProvider_t {
EProviderUnknown=0, EProviderSimulator=100, EProviderIQF, EProviderIB, EProviderGNDT, EProviderCalc, EProviderAlpaca, EProviderPhemex
, EProviderUserBase=900/*, _EProviderCount*/ };
// PortfolioManager
using idPortfolio_t = std::string;
using idPosition_t = std::int64_t; // auto increment
// OrderManager
using idOrder_t = std::int64_t; // supplied/sync'd with execution provider
using idExecution_t = std::int64_t; // auto increment
} // namespace keytypes
namespace tablenames { // tablenames
extern const std::string sAccountAdvisor;
extern const std::string sAccountOwner;
extern const std::string sCashAccount;
extern const std::string sCashTransaction;
extern const std::string sAccount;
extern const std::string sPortfolio;
extern const std::string sPosition;
extern const std::string sOrder;
extern const std::string sExecution;
extern const std::string sExchange;
extern const std::string sInstrument;
extern const std::string sAltInstrumentName;
} // namespace tablenames
} // namespace tf
} // namespace ou