Files
PolyTraderSharp/src/PolyTrader.Core/Models/Position.cs
T
RichardandClaude Opus 4.8 b951b912f4 Phase 6 (Stufe 6): MongoDB vollstaendig entfernt
- Legacy-Form stillgelegt: frm_main(.Designer/.resx) + frm_analytics(.Designer/.resx)
  geloescht, 'Open Legacy'-Menue aus LauncherForm entfernt.
- Program.cs: IMongoDatabase-Registrierung + closed_trades-Cleanup weg;
  Trade-Nummerierung liest jetzt hoechste TradeId aus ICopyTradeLogRepository.
- StartupHydrationService: Mongo-/Bson-Fallback entfernt (Settings kommen aus
  dem Repo; fehlende Accounts erhalten Default-Settings).
- Alle Mongo*Repository (Core 4 + Modul 4) geloescht; DI-Zweige auf EF/MySQL
  reduziert (AddCorePersistence, CopyTradingModule).
- ConfigMigrator: Mongo-Pfad (Run/MigrateSettings) entfernt; nur noch
  RunFromJson + VerifyMySql (kein Mongo-Treiber mehr).
- Modelle: [BsonId] entfernt (EF-Keys via HasKey); ObjectId-Defaults -> Guid.
- LiteDB-Shim (MongoDbLiteDBShim) geloescht; MongoDB.Driver- + LiteDB-Pakete
  aus App/Core entfernt; stale usings + user-sichtbare Strings bereinigt.
- DatabaseOptions/appsettings.json: Mongo-Provider/Connection-Felder entfernt.
- Build gruen; --verify-mysql bestaetigt 3 Accounts/3 Settings/32 Trader/2344 Markets.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 18:34:17 +02:00

28 lines
1.2 KiB
C#

namespace PolyTraderSharp.Models
{
public class Position
{
// Für MySQL: eine positions-Tabelle mit account_id + is_demo (in Mongo lag das
// im Collection-Namen open_positions_{id} / demo_positions_{id}).
public int AccountId { get; set; }
public bool IsDemo { get; set; }
public string TokenId { get; set; } = string.Empty;
public string MarketSlug { get; set; } = string.Empty;
public string ConditionId { get; set; } = string.Empty;
public int SourceTraderId { get; set; }
public string SourceTraderName { get; set; } = string.Empty;
public string SourceTraderAddress { get; set; } = string.Empty;
public string MarketQuestion { get; set; } = string.Empty;
public string Outcome { get; set; } = string.Empty;
public string Side { get; set; } = "BUY";
public decimal EntryPrice { get; set; }
public decimal Size { get; set; } // Shares
public decimal AmountUsd { get; set; }
public decimal CurrentPrice { get; set; }
public decimal CurrentValueUsd { get; set; }
public System.DateTime? ExpiryDate { get; set; }
public System.DateTime OpenedAt { get; set; } = System.DateTime.UtcNow;
}
}