102 lines
3.9 KiB
Python
102 lines
3.9 KiB
Python
# Generated manually for QualificationReplayV1.
|
|
|
|
import uuid
|
|
|
|
import django.db.models.deletion
|
|
from django.db import migrations, models
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
dependencies = [("trading_studio", "0001_initial")]
|
|
|
|
operations = [
|
|
migrations.CreateModel(
|
|
name="QualificationReplayRun",
|
|
fields=[
|
|
(
|
|
"id",
|
|
models.UUIDField(
|
|
default=uuid.uuid4, editable=False, primary_key=True, serialize=False
|
|
),
|
|
),
|
|
("created_at", models.DateTimeField(auto_now_add=True)),
|
|
("updated_at", models.DateTimeField(auto_now=True)),
|
|
("fold", models.CharField(max_length=120)),
|
|
("scenario_name", models.CharField(max_length=160)),
|
|
("runner_name", models.CharField(max_length=160)),
|
|
("replay_mode", models.CharField(default="CANARY_ONLY", max_length=32)),
|
|
("input_hash", models.CharField(max_length=128)),
|
|
("calibration", models.JSONField(default=dict)),
|
|
("configuration", models.JSONField(default=dict)),
|
|
("summary", models.JSONField(default=dict)),
|
|
(
|
|
"dataset_version",
|
|
models.ForeignKey(
|
|
on_delete=django.db.models.deletion.PROTECT,
|
|
related_name="qualification_runs",
|
|
to="trading_studio.marketdatasetversion",
|
|
),
|
|
),
|
|
(
|
|
"strategy_version",
|
|
models.ForeignKey(
|
|
on_delete=django.db.models.deletion.PROTECT,
|
|
related_name="qualification_runs",
|
|
to="trading_studio.strategyversion",
|
|
),
|
|
),
|
|
],
|
|
),
|
|
migrations.CreateModel(
|
|
name="QualificationReplayLedger",
|
|
fields=[
|
|
(
|
|
"id",
|
|
models.UUIDField(
|
|
default=uuid.uuid4, editable=False, primary_key=True, serialize=False
|
|
),
|
|
),
|
|
("created_at", models.DateTimeField(auto_now_add=True)),
|
|
("updated_at", models.DateTimeField(auto_now=True)),
|
|
("sequence", models.PositiveIntegerField()),
|
|
("identity", models.CharField(max_length=512)),
|
|
("result", models.JSONField(default=dict)),
|
|
(
|
|
"qualification_run",
|
|
models.ForeignKey(
|
|
on_delete=django.db.models.deletion.CASCADE,
|
|
related_name="ledger_rows",
|
|
to="trading_studio.qualificationreplayrun",
|
|
),
|
|
),
|
|
],
|
|
),
|
|
migrations.AddConstraint(
|
|
model_name="qualificationreplayrun",
|
|
constraint=models.UniqueConstraint(
|
|
fields=(
|
|
"strategy_version",
|
|
"dataset_version",
|
|
"fold",
|
|
"scenario_name",
|
|
"runner_name",
|
|
"input_hash",
|
|
),
|
|
name="unique_qualification_replay_identity",
|
|
),
|
|
),
|
|
migrations.AddConstraint(
|
|
model_name="qualificationreplayledger",
|
|
constraint=models.UniqueConstraint(
|
|
fields=("qualification_run", "sequence"),
|
|
name="unique_qualification_ledger_sequence",
|
|
),
|
|
),
|
|
migrations.AddConstraint(
|
|
model_name="qualificationreplayledger",
|
|
constraint=models.UniqueConstraint(
|
|
fields=("qualification_run", "identity"),
|
|
name="unique_qualification_ledger_identity",
|
|
),
|
|
),
|
|
]
|