# celery_app.py
import os
from celery import Celery

def make_celery():
    broker_url  = os.getenv("CELERY_BROKER_URL",    "redis://localhost:6379/0")
    backend_url = os.getenv("CELERY_RESULT_BACKEND","redis://localhost:6379/1")
    app = Celery(
        "neutral_sigma",
        broker=broker_url,
        backend=backend_url,
        include=["backtesting.tasks_backtesting"],  # <- paquete.ruta
    )
    app.conf.update(
        task_serializer="json",
        result_serializer="json",
        accept_content=["json"],
        timezone="UTC",
        enable_utc=True,
        worker_prefetch_multiplier=1,
        task_acks_late=True,
        task_time_limit=60*20,
        task_soft_time_limit=60*18,
        broker_transport_options={"visibility_timeout": 60*30},
    )
    return app

celery = make_celery()
