الوثائق1.0 (latest)
الصفحاتإعدادات التشغيل المسبقة (.qcs) · 17 / 29

إعدادات التشغيل المسبقة (.qcs)

احفظ إعدادات نوافذ التشغيل وأعد تحميلها كملفات JSON بامتداد .qcs في مجلد مساحة العمل الخاص بـ QuantCraft. استخدمها لإعادة استخدام الرموز والأطر الزمنية ومعاملات الإدخال وغيرها من الخيارات بين الجلسات دون إعادة كتابتها.


مكانها في الواجهة

تعرض كل نافذة Load وSave في أعلى متن النافذة (أسفل العنوان والوصف مباشرةً):

النافذةكيفية الفتح
Run backtestبيئة تطوير QuantCraft ← Test ← Run backtest
Bulk forward new runAutoTrading أو QuantCloud ← ابدأ مهمة bulk forward جديدة
Chart forward testTrade ← اربط خوارزمية .qcraft.json ← افتح معاملات الخوارزمية

المتطلبات المسبقة

  1. تطبيق سطح المكتب — يستخدم الحفظ/التحميل مربعات حوار ملفات أصلية (غير متاحة في المعاينة عبر المتصفح فقط).
  2. مجلد مساحة العمل — يُحدَّد عبر Files sidebar ← Workspace Folder في QuantCraft. وتبدأ مربعات الحوار في هذا الدليل افتراضيًا.

إذا لم تكن مساحة عمل معيّنة، يطلب منك التطبيق اختيار واحدة أولًا.


صيغة الملف

الملفات بصيغة JSON وترميز UTF-8. البنية على المستوى الأعلى:

{ "format": "quantcraft-run-config-v1", "savedFrom": "backtest", "savedAt": "2026-06-09T12:00:00.000Z", "settings": { } }
الحقلالمعنى
formatيجب أن يكون quantcraft-run-config-v1.
savedFromبيانات وصفية: backtest أو bulk_forward أو chart_forward (أي نافذة حفظت الملف).
savedAtالطابع الزمني بصيغة ISO لحظة كتابة الملف.
settingsكائن مسطّح لخيارات التشغيل (انظر الجدول أدناه). جميع المفاتيح اختيارية.

يكتب Save الحقول التي تنطبق على النافذة الحالية فقط. أما Load فيستخدم دائمًا قواعد النافذة الهدف ويتجاهل المفاتيح التي لا تنطبق.

أسماء الملفات المقترحة افتراضيًا

النافذةالاسم الافتراضي
Run backtestbacktest-config.qcs
Bulk forwardbulk-forward-config.qcs
Chart forward testchart-forward-config.qcs

يمكنك اختيار أي اسم ينتهي بـ .qcs عند الحفظ.


حقول الإعدادات بحسب النافذة

المفتاحBacktestBulk forwardChart forward
symbols وassetType وsymbolPasteنعم——
symbolSource ("manual" / "screener")نعم——
screenerSource وscreenerPresetId وscreenerScriptId وscreenerSortColumn وscreenerSortDirection وscreenerRankDirection وscreenerLimit وscreenerIntervalDays وscreenerIncludeOpenPositionsنعمنعم—
screenerRefreshTime—نعم—
symbolPaste (bulk: رموز ملصقة)—نعم—
startingBalance وstartDate وendDate وwarmupBarsنعم——
ohlcvSourceنعم——
timeframeAlpaca وtimeframeB2 وminBarsنعم——
secondaryTimeframesنعمنعمنعم
includeFundamentals وfundamentalsPickerValues وfundamentalsExtraPathsنعمنعم*نعم
includeFactorsنعمنعمنعم
includeCalendar وapplySplits وapplyDividends وdividendDatePolicyنعم——
inputParamsنعمنعمنعم
optimize وoptimizeMode وgeneticPopulationSize وgeneticGenerations وgeneticElitism وgeneticCrossoverRate وgeneticMutationRate وgeneticFitnessMetric وgeneticSeedنعم——
slPct وslDollars وtpPct وtpDollars وriskPctPerTrade وriskFixedPerTradeنعم†——
commissionModel وcommissionCost وcommissionMinTradeCostنعم——
slippageModel وslippageVolumeLimit وslippagePriceImpact وslippageSpreadنعم——
algoId—نعم—
targetScope وselectedStocks وselectedCrypto—نعم—
periodMinutes وtimeframeUi—نعم—
tickMode—نعم—
timerIntervalMs—نعمنعم

* يحفظ bulk/يطبّق قيم أداة اختيار البيانات الأساسية عند وجودها؛ وfundamentalsExtraPaths حقل للاختبار الرجعي في الأساس.
† يُحفظ/يُطبَّق عند وجوده في مساعدات النموذج/الحمولة؛ وقد لا تعرض نافذة Run backtest مدخلات SL/TP/المخاطر في الواجهة.

ohlcvSource: "alpaca" أو "b2" (مصدر أسعار QuantCraft) للاختبار الرجعي.

tickMode: لـ bulk فقط — "timer" (دورة المؤقّت) أو "tick" (تدفق التيكات الحي). وتسمّيه النافذة Execution trigger.

includeFactors: عندما يكون true، ترفق عمليات التشغيل بيانات عوامل فاما-فرينش العالمية. ويؤدي تحميله في نافذة الاختبار الرجعي أو bulk forward إلى مسحه (ومسح includeFundamentals) إذا لم يكن لديك وصول Premium / إلى البيانات المجانية؛ أما نافذة chart forward فتطبّقه كما حُفظ. تقرأ الاستراتيجيات fama_french.qc؛ و**rows** الشهرية هي قاموس YYYYMM — راجع عوامل فاما-فرينش.

includeCalendar (الاختبار الرجعي): القيد نفسه لـ Premium عند التحميل. وdividendDatePolicy هي "best_available" (الافتراضي — تُقيَّد تواريخ الاستحقاق التقديرية) أو "exact_only" أو "off". لا يوجد عنصر تحكم لها في النافذة، لذا فملف .qcs هو الطريقة الوحيدة لتغييرها. راجع بيانات التقويم.

timeframeB2 (الاختبار الرجعي): تُقيَّد القيم المحمَّلة إلى يومي / أسبوعي / شهري عندما لا تكون على Premium.

secondaryTimeframes: قائمة بأحجام أعمدة إضافية لـ rt.get_bar(Timeframe.X, shift) (مثل ["1Hour", "1D"]). تُحذف من الملفات المحفوظة عندما تكون فارغة. وعند التحميل في bulk forward يُسقَط الإدخال المطابق للإطار الزمني الأساسي المستعاد؛ أما نافذتا الاختبار الرجعي وchart-forward فتحتفظان بالقائمة كما حُفظت. راجع بيانات OHLCV والأعمدة.

مفاتيح العمولة / الانزلاق (commissionModel وcommissionCost وcommissionMinTradeCost وslippageModel وslippageVolumeLimit وslippagePriceImpact وslippageSpread): تُحفظ من الاختبار الرجعي فقط. راجع نموذج الحساب لمعاني النماذج.

بنية inputParams

كائن مفهرس باسم معامل النص البرمجي. كل إدخال:

"LOOKBACK": { "type": "int", "value": "20", "optStep": "5", "optMax": "40" }
  • يُحفظ optStep وoptMax من الاختبار الرجعي فقط (شبكة التحسين). وتزيلهما نوافذ forward عند التحميل.
  • تُطبَّق فقط الأسماء الموجودة في النص المحمَّل حاليًا؛ أما الأسماء الأخرى في الملف فتُتجاهل.

راجع معاملات الإدخال لمعرفة كيفية اكتشاف params.NAME في شيفرة الاستراتيجية.


التحميل بين النوافذ

يمكنك تحميل ملف .qcs محفوظ من نافذة في نافذة أخرى. يطبّق التطبيق الحقول المتوافقة فقط ويتخطى الباقي بصمت.

من ← إلىما الذي يُنقل
Backtest ← bulk forwardsymbols + assetType ← النطاق الهدف وتحديدات الأسهم/العملات المشفرة؛ timeframeAlpaca أو B2 d/w ← timeframeUi؛ secondaryTimeframes؛ tickMode إن وُجد؛ حقول البيانات الأساسية/العوامل؛ inputParams؛ timerIntervalMs إن وُجد
Backtest ← chart forwardinputParams وحقول البيانات الأساسية و**includeFactors** وsecondaryTimeframes وtimerIntervalMs؛ وتُتجاهل التواريخ والرصيد وحقول التحسين
Bulk forward ← backtestselectedStocks / selectedCrypto ← symbols؛ timeframeUi ← timeframeAlpaca، أو B2 timeframeB2 عندما يكون ohlcvSource المحفوظ (أو مصدر الأسعار الحالي للنافذة إن لم يوجد) هو B2؛ حقول البيانات الأساسية / العوامل؛ secondaryTimeframes؛ حقول الماسح؛ inputParams
أي ← أيتُتجاهل المفاتيح المجهولة أو غير المنطبقة دون خطأ

مطابقة الأطر الزمنية

المصدريُطابَق مع
timeframeUi 1D / 1WeekBacktest timeframeAlpaca، أو B2 timeframeB2 d / w عندما يكون مصدر البيانات B2
Backtest timeframeB2 d / wBulk timeframeUi 1D / 1Week
أي timeframeB2 آخر في backtest (m شهري وm5 وh1 و4h …)لا نظير في bulk — يُتخطى عند التحميل المتقاطع

الرموز وأهداف bulk

  • Backtest ← bulk: تُصنَّف symbols في selectedStocks أو selectedCrypto متى أمكن؛ ويصبح النطاق الهدف Selected.
  • Bulk ← backtest: تُدمج الأسهم والعملات المشفرة المحددة في المصفوفة symbols؛ ويُستنتج assetType من التحديد.

وضع تحرير bulk forward

عند تحرير تشغيل bulk موجود، يظل Load يطبّق الأهداف والفترة والإطار الزمني والمؤقّت ووضع التيك ومعاملات النص. ولا يتغير algoId (فالخوارزمية ثابتة لذلك التشغيل).


عناصر مساحة العمل ذات الصلة

الامتدادالغرض
.pyملفات مصدر الاستراتيجيات (نسخة مرآة من مساحة العمل)
.qcraft.jsonحزمة قابلة للتشغيل مترجَمة لـ Trade / عمليات التشغيل الأمامي
.qcsإعدادات مسبقة محفوظة لـنوافذ التشغيل (هذه الصفحة)
6 دقائق للقراءةاقترح تعديلًا ↗
إعدادات التشغيل المسبقة (.qcs) — الوثائق (1.0 (latest)) | QuantCraft