25 lines
624 B
Dart
25 lines
624 B
Dart
/// Typed DTO for requesting a trade exit/close.
|
|
class CloseTradeRequestDto {
|
|
final double userExitPrice;
|
|
final DateTime? userExitTimestamp;
|
|
final double exitFee;
|
|
final String closeReason;
|
|
|
|
const CloseTradeRequestDto({
|
|
required this.userExitPrice,
|
|
this.userExitTimestamp,
|
|
this.exitFee = 1.0,
|
|
this.closeReason = 'ManualClosure',
|
|
});
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
'userExitPrice': userExitPrice,
|
|
if (userExitTimestamp != null) 'userExitTimestamp': userExitTimestamp!.toUtc().toIso8601String(),
|
|
'exitFee': exitFee,
|
|
'closeReason': closeReason,
|
|
};
|
|
}
|
|
}
|
|
|