public ExchangesService(IUserProfiles userProfiles, IExchanges exchanges, IUnitOfWork unitOfWork, IGames games, MappingService mappingService) { this.userProfiles = userProfiles; this.exchanges = exchanges; this.unitOfWork = unitOfWork; this.games = games; this.mappingService = mappingService; }
static void Main(string[] args) { log = new Log(DateTime.Now.ToString("yyyyMMddHHmmss") + ".txt"); prices = new List <double>(15); TradeBook = new List <Trade>(); for (int i = 0; i < 15; i++) { prices.Add(0); } LastBalanceTime = DateTime.Now; FromSymbol = "LTC"; ToSymbol = "BTC"; tradepair = new TradePair(FromSymbol, ToSymbol); exchange = new KFCC.Exchanges.EOkCoin.OkCoinExchange("a8716cf5-8e3d-4037-9a78-6ad59a66d6c4", "CF44F1C9F3BB23B148523B797B862D4C", "", ""); exchange.Subscribe(tradepair, CommonLab.SubscribeTypes.WSS); exchange.TradeEvent += Exchange_TradeEvent; exchange.DepthEvent += Exchange_DepthEvent; MainLoop(); Console.ReadKey(); }
private void LoadExchanges() { List <string> pluginpath = FindPlugin(); foreach (string filename in pluginpath) { try { //获取文件名 string asmfile = filename; string asmname = Path.GetFileNameWithoutExtension(asmfile); if (asmname != string.Empty) { // 利用反射,构造DLL文件的实例 Assembly asm = Assembly.LoadFile(asmfile); //利用反射,从程序集(DLL)中,提取类,并把此类实例化 Type[] t = asm.GetExportedTypes(); foreach (Type type in t) { if (type.GetInterface("IExchanges") != null) { IExchanges exchange = (IExchanges)Activator.CreateInstance(type); Exchanges.Add(exchange.Name, exchange); //Console.Write(exchange.Name); } } } } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
static public void ExchangeSetup() { string s1 = "", s2 = "", s3 = "", s4 = "", s5 = "", s6 = ""; foreach (KeyValuePair <string, IExchanges> e in Exchanges) { IExchanges exchange = e.Value; if (exchange.Name == "OkCoin") { s1 = "a8716cf5-8e3d-4037-9a78-6ad59a66d6c4"; s2 = "CF44F1C9F3BB23B148523B797B862D4C"; s3 = ""; s4 = ""; s5 = "-0.1"; s6 = "0.1"; } else if (exchange.Name == "Bitstamp") { s1 = "SkDFzpEwvEHyXl45Bvc0nlHXPeP3e1Wa"; s2 = "hIW0CYUK1NvbZR73N5rPDO0yly4GgK3l"; s3 = "rqno1092"; s4 = "caojia"; s5 = "0.25"; s6 = "0.25"; } else if (exchange.Name == "Huobi") { s1 = "cbf0909f-7842f68b-8c0db43c-04172"; s2 = "7e022c00-19e4e4a8-2b3ed1d9-312e0"; s3 = "0"; s4 = "caojia"; s5 = "0.2"; s6 = "0.2"; } //else if (exchange.Name == "Quoine") //{ // s1 = "cbf0909f-7842f68b-8c0db43c-04172"; // s2 = "7e022c00-19e4e4a8-2b3ed1d9-312e0"; // s3 = "0"; // s4 = "caojia"; // s5 = "0.2"; // s6 = "0.2"; //} else if (exchange.Name == "Binance") { s1 = "EspHWtI5WbB3FVUoywxqpE9SkawJKQcrb3q2vu54b428uGdNdIyZlESi29DIBS4n"; s2 = "BT5OJjq1IQuVmfp8yInJMfiy8aMBdFbRIHSQoB8QyRMucbBQmjWPdI1Plzdz54o3"; s3 = "0"; s4 = "caojia"; s5 = "0.2"; s6 = "0.2"; } else if (exchange.Name == "ZB") { s1 = "16de7c10-2315-454d-b023-048058a6aed5"; s2 = "1b3f8111-6dfe-4160-8eab-143986e04629"; s3 = "0"; s4 = "caojia"; s5 = "0.2"; s6 = "0.2"; } exchange.SetupExchage(s1, s2, s3, s4); exchange.SetupFee(s5, s6); } }