Implement strategies and posting trades

This commit is contained in:
2022-10-27 18:08:40 +01:00
parent 7e4f3f52d1
commit 061c6f6ca7
32 changed files with 1060 additions and 178 deletions

View File

@@ -111,7 +111,10 @@ class TradeAction(LoginRequiredMixin, APIView):
if trade_id:
try:
form = TradeForm(request.data, instance=Trade.objects.get(id=trade_id))
form = TradeForm(
request.data,
instance=Trade.objects.get(id=trade_id, account__user=request.user),
)
except Trade.DoesNotExist:
message = "Trade does not exist"
message_class = "danger"
@@ -125,12 +128,18 @@ class TradeAction(LoginRequiredMixin, APIView):
if form.is_valid():
trade = form.save(commit=False)
print("PRESAVE TRADE", trade)
trade.user = request.user
trade.save()
print("SAVED TRADE", trade)
if trade_id:
message = f"Trade {trade_id} edited successfully"
success, returned = trade.post()
if success:
print("SAVED TRADE", trade)
if trade_id:
message = f"Trade {trade_id} edited successfully"
else:
message = f"Trade {trade.id} added successfully"
else:
message = f"Trade {trade.id} added successfully"
message = f"Error adding trade: {returned}"
message_class = "danger"
else:
message = "Error adding trade"
message_class = "danger"