Move order settings to OrderSettings

This commit is contained in:
2023-02-15 18:41:08 +00:00
parent 69cf8dcc10
commit b4afa32a6e
4 changed files with 21 additions and 36 deletions

View File

@@ -369,10 +369,6 @@ class Strategy(models.Model):
description = models.TextField(null=True, blank=True)
account = models.ForeignKey(Account, on_delete=models.CASCADE)
trading_times = models.ManyToManyField(TradingTime)
order_type = models.CharField(
choices=TYPE_CHOICES, max_length=255, default="market"
)
time_in_force = models.CharField(choices=TIF_CHOICES, max_length=255, default="gtc")
entry_signals = models.ManyToManyField(
Signal, related_name="entry_strategies", blank=True
)
@@ -383,12 +379,6 @@ class Strategy(models.Model):
Signal, related_name="trend_strategies", blank=True
)
enabled = models.BooleanField(default=False)
take_profit_percent = models.FloatField(default=1.5)
stop_loss_percent = models.FloatField(default=1.0)
trailing_stop_loss_percent = models.FloatField(default=1.0, null=True, blank=True)
# price_slippage_percent = models.FloatField(default=2.5)
# callback_price_deviation_percent = models.FloatField(default=0.5)
trade_size_percent = models.FloatField(default=0.5)
trends = models.JSONField(null=True, blank=True)
asset_group = models.ForeignKey(
@@ -443,9 +433,6 @@ class AssetGroup(models.Model):
name = models.CharField(max_length=255)
description = models.TextField(null=True, blank=True)
# Dict like {"RUB": True, "USD": False}
# allowed = models.JSONField(null=True, blank=True, default=dict)
webhook_id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True)
when_no_data = models.IntegerField(choices=MAPPING_CHOICES, default=7)
@@ -457,7 +444,7 @@ class AssetGroup(models.Model):
when_bearish = models.IntegerField(choices=MAPPING_CHOICES, default=3)
def __str__(self):
return f"{self.name}"
return self.name
@property
def matches(self):
@@ -499,3 +486,6 @@ class OrderSettings(models.Model):
stop_loss_percent = models.FloatField(default=1.0)
trailing_stop_loss_percent = models.FloatField(default=1.0, null=True, blank=True)
trade_size_percent = models.FloatField(default=0.5)
def __str__(self):
return self.name