public static void AddRow(int index, string date) { Row row = RowList.Get(index); string rowS = date + ";" + row.EntryTriangle.Symbol1.Name + ";" + row.EntryTriangle.Symbol1.MarketData.Ask.ToString() + ";" + row.EntryTriangle.Symbol1.MarketData.Bid.ToString() + ";" + row.EntryTriangle.Symbol1.MarketData.Quantity.ToString() + ";" + row.EntryTriangle.Symbol2.Name.ToString() + ";" + row.EntryTriangle.Symbol2.MarketData.Ask.ToString() + ";" + row.EntryTriangle.Symbol2.MarketData.Bid.ToString() + ";" + row.EntryTriangle.Symbol2.MarketData.Quantity.ToString() + ";" + row.EntryTriangle.Symbol3.Name.ToString() + ";" + row.EntryTriangle.Symbol3.MarketData.Ask.ToString() + ";" + row.EntryTriangle.Symbol3.MarketData.Bid.ToString() + ";" + row.EntryTriangle.Symbol3.MarketData.Quantity.ToString() + ";" + row.EntryTriangle.CalculateArbitrage().ToString() + "\n"; sb.Append(rowS); //lastIndex += 1; //xlWorkSheet.Cells[lastIndex, 1] = row.EntryTriangle.Symbol1.Name; //xlWorkSheet.Cells[lastIndex, 2] = row.EntryTriangle.Symbol1.MarketData.Ask; //xlWorkSheet.Cells[lastIndex, 3] = row.EntryTriangle.Symbol1FactorAsset; //xlWorkSheet.Cells[lastIndex, 4] = row.EntryTriangle.Symbol2.Name; //xlWorkSheet.Cells[lastIndex, 5] = row.EntryTriangle.Symbol2.MarketData.Bid; //xlWorkSheet.Cells[lastIndex, 6] = row.EntryTriangle.Symbol2FactorAsset; //xlWorkSheet.Cells[lastIndex, 7] = row.EntryTriangle.Symbol3.Name; //xlWorkSheet.Cells[lastIndex, 8] = row.EntryTriangle.Symbol3.MarketData.Bid; //xlWorkSheet.Cells[lastIndex, 9] = row.EntryTriangle.Symbol3FactorAsset; //xlWorkSheet.Cells[lastIndex, 10] = row.EntryTriangle.CalculateArbitrage(); }
public static void OpenPosition(int index, string date, double sm1Ask, double sm1Bid, double sm2Ask, double sm2Bid, double sm3Ask, double sm3Bid) { Row row = RowList.Get(index); if (!row.EntryTriangle.isOpen) { MapRow(index, date, sm1Ask, sm1Bid, sm2Ask, sm2Bid, sm3Ask, sm3Bid); row.EntryTriangle.isOpen = true; } }
public static string GetRow(int i) { string output = "Entry"; Row row = RowList.Get(i); output += "," + row.EntryTriangle.Symbol1.Name; output += "," + row.EntryTriangle.Symbol2.Name; output += "," + row.EntryTriangle.Symbol3.Name; return(output); }
public static string MapRow(int rowIndex, string date, double sm1Ask, double sm1Bid, double sm2Ask, double sm2Bid, double sm3Ask, double sm3Bid) { Row row = RowList.Get(rowIndex); row.EntryTriangle.Symbol1.MarketData.Ask = sm1Ask; row.EntryTriangle.Symbol1.MarketData.Bid = sm1Bid; row.EntryTriangle.Symbol2.MarketData.Ask = sm2Ask; row.EntryTriangle.Symbol2.MarketData.Bid = sm2Bid; row.EntryTriangle.Symbol3.MarketData.Ask = sm3Ask; row.EntryTriangle.Symbol3.MarketData.Bid = sm3Bid; row.EntryTriangle.SetFactorValue(); ExcelWriter.AddRow(rowIndex, date); if (row.EntryTriangle.CalculateArbitrage() > 0 && !row.EntryTriangle.isOpen) { return(row.EntryTriangle.Symbol1.Name + "," + row.EntryTriangle.Symbol1FactorAsset + "," + row.EntryTriangle.Symbol2.Name + "," + row.EntryTriangle.Symbol2FactorAsset + "," + row.EntryTriangle.Symbol3.Name + "," + row.EntryTriangle.Symbol3FactorAsset); } else { return("-1"); } }