Settings · Scheduler
The scheduled data jobs, the timestamped job log of every run, and running the daily pipeline by hand.
Scheduled jobs
What it is: The data jobs that run on their own while the application is up, when they run, the time, status and message of their latest run; a run now button for the administrator.
What data feeds it: /api/system/jobs and the app.scheduler settings in application.yml (Europe/Istanbul time). The daily pipeline at 19:00 on weekdays (if the application is down at that time, a missed day is checked for 2 minutes after startup and every hour, and a run starts with the catch-up trigger; this run fetches all days missing from the last price up to today; when price fetching finishes, companies whose price for the day has not arrived are asked three more times right away, because the source's servers publish the day at different times; if companies that had a price on the previous trading day are still missing, the day is fetched again every hour until nothing is missing; a day with no prices at all is treated as a holiday), company fundamentals at 19:30 on weekdays, index members (BIST 30/50/100, from Borsa İstanbul's hisse_endeks_ds.csv file; if the counts are not 30/50/100 the list is not saved) at 19:45 on weekdays, the link network scan at 20:00 on weekdays, shareholding structure and capital history on Saturdays at 10:00, KAP disclosures every day at 22:15, news feeds every half hour, the Claude end-of-day review every day at 22:30, the player check every ten minutes.
What it shows: Fundamentals update the market capitalisation and free float ratio of all stocks with a single request. The shareholding structure and paid-in capital change once a quarter and need several requests per stock; that is why they run once a week and refresh the last 24 months. If the same job is already running, the second run is skipped and this is written to the log.
What can be concluded from it: If the scheduler is off (app.scheduler.enabled=false), no job runs on its own. Runs missed while the application was down are not made up later; if needed, they are started by hand with the run now button.
Job log
What it is: Every run of every data job, newest first: start time, job, whether it was scheduled or started by hand, status, duration, row count and message.
What data feeds it: The job_run table; the last 100 runs are shown.
What it shows: SUCCEEDED means the job completed. FAILED is a connection, server or parsing error; the reason is in the message. BLOCKED means the source refused the request; the HTTP code is shown next to the status. RUNNING means the job is in progress.
What can be concluded from it: If the same job shows BLOCKED repeatedly, the source is not accepting requests from this network; the application does not increase the request rate. If the pipeline FAILED, no live signal was produced for that day.
Daily pipeline
What it is: The form that runs the pipeline now or for a specific day, the scheduler's status, and the list of missing days.
What data feeds it: The /api/system/pipeline endpoints and the pipeline_run table. The scheduler runs every business day at 19:00 (Europe/Istanbul). If the application is down at that time, the run is not lost: if there is no pipeline run in the job log that started after the last due time, the application notices this 2 minutes after startup or within an hour at the latest and starts a catch-up run; until then the red "Data missing: day" warning appears in the top bar. If the source has not yet published the day's close for all companies (63 of 115 companies in the 2026-09-14 19:00 run), the same warning appears and the missing ones are fetched again every hour.
What it shows: The pipeline, in order, fetches prices, updates returns and residuals, runs the five models for that day and writes the LIVE signals. If run at the weekend or before the session closes, it runs for the last trading day.
What can be concluded from it: Live signals are saved on the evening they are written and never changed again; so if a missing day is filled in later, that day's signal is not "live" but produced late. The value of the live record depends on the pipeline running regularly every day.
Pipeline history
What it is: The status of each day's pipeline run and the durations of its steps.
What data feeds it: The pipeline_run table; the steps are stored in the steps_json field.
What it shows: The status, duration and message of the price fetching, returns and residuals, models and signals steps.
What can be concluded from it: A red day means no live signal was produced for that day; the data badge in the top bar also turns red. A long price fetching step is usually due to the source responding slowly.
The investment information, comments and recommendations given here are not within the scope of investment advisory services. Investment advisory services are provided under an investment advisory agreement to be signed between a client and brokerage houses, portfolio management companies, or banks that do not accept deposits. The signals here are produced from historical data with statistical models, are shown the same to everyone and are not personalised; they may not suit your financial situation or your risk and return preferences. Therefore, making investment decisions based solely on the information given here may not produce results that meet your expectations.