public static void UpdateTransfer(int from_unit, int to_unit, int from_account, int to_account, string code, int count, decimal price_latest) { string key_from = "P_" + code + "_A_" + from_account + "_U_" + from_unit; TradeRA.Increment(key_from, "count", -count); TradeRA.Increment(key_from, "count_sellable", -count); string key_to = "P_" + code + "_A_" + to_account + "_U_" + to_unit; if (TradeRA.KeyExists(key_to)) { TradeRA.Increment(key_to, "count", count); TradeRA.Increment(key_to, "count_sellable", count); } else { Position position = Get(key_from); position.unit_id = to_unit; position.account_id = to_account; position.count = position.count_sellable = count; position.price_cost_today_buy = position.price_cost_today_sell = 0; position.count_today_buy = position.count_today_sell = 0; position.price_latest = price_latest; Add(position, key_to); } }
public static void UpdateCapitalDealBuy(decimal delta, bool freezing, string key) { TradeRA.Increment(key, "capital_balance", -(float)delta); if (freezing) { TradeRA.Increment(key, "capital_freezing", -(float)delta); } }
public static void UpdateSellableOrderSell(decimal delta, string key) { TradeRA.Increment(key, "count_sellable", (float)delta); }
public static void UpdateCapitalDealSell(decimal delta, string key) { TradeRA.Increment(key, "capital_balance", (float)delta); }
public static void UpdateCapitalOrderBuy(decimal delta, string key) { TradeRA.Increment(key, "capital_freezing", (float)delta); }
public static void UpdateCapitalInOut(decimal delta, string key) { TradeRA.Increment(key, "capital_scale", (float)delta); TradeRA.Increment(key, "capital_balance", (float)delta); TradeRA.Increment(key, "capital_inout", (float)delta); }