نظرة عامة
يُعد منشئ مجموعة بيانات MagicInput أداةً أساسية في إعداد بيانات تدريب عالية الجودة ومُعنونة
لنماذج التداول القائمة على الذكاء الاصطناعي للعملات الرقمية. حيث يُحاكي نتائج التداول
استنادًا إلى مجموعة واسعة من الإعدادات المسبقة والاستراتيجيات والظروف التاريخية،
لإنشاء مجموعة بيانات غنية بصيغة .parquet
، ومُحسّنة لتدريب النماذج بكفاءة عالية.
🛠 الإعداد (config.yaml)
daysBack: 30
exportFolder: exports
categories:
- meme
datasetDir: datasets
baseDir: presets
direction: Both # Long, Short, Both
strategy: scalp # balance_midterm, long_term, scalp, swing
maxVariations: 100 # 0: Skip / test cap
isDryRun: false
writeThreshold: 500
maxMemoryMB: 8000
database:
provider: sqlite
connectionString: Data Source=trade.db
هذا الإعداد يُوجّه المحاكي إلى:
- رمز الأصل والإطار الزمني (مثل BTC، 1m)
- نطاق الاختبار العكسي بالأيام
- الفئات والاستراتيجيات المُراد تضمينها
- نوع المحاكاة الاتجاهي: شراء / بيع / كلاهما
- حدود الذاكرة والكتابة
- اختبار تجريبي اختياري (dry-run)
🧩 التسلسل الهرمي للفئة / الاتجاه / الاستراتيجية
يتم تنظيم كل مجموعة بيانات باستخدام تسلسل هرمي مكون من 3 مجلدات:
- الفئة: مثل
meme
،layer1
،AI
- الاتجاه:
Long
،Short
،Both
- الاستراتيجية:
balance_midterm
،long_term
،scalp
،swing
كل ملف YAML للإعدادات المسبقة يُحدد نطاقات إدخال مُعلمة لإنشاء البيانات.
🧠 مثال لإعداد مسبق
name: Scalping Strategy - Long
description: ملف تداول عالي التردد وقصير الأجل مع SL/TP ضيق ورافعة مالية عالية
leverage: [25, 50, 75]
strategy: [0, 1, 2]
virtualBalance: [100, 250]
riskPercent: [3, 5]
stopLoss: [0.3, 0.5, 1.0]
takeProfit: [0.5, 1.0, 2.0]
trailingSLOffset: [0.2, 0.5]
breakevenActivation: [0.5, 1.0]
breakevenBuffer: [0.1, 0.2]
trailingTPTrigger: [1.0, 2.0]
trailingTPOffset: [0.5]
timeTriggerEnabled: [true]
timeTriggerMinutes: [1, 3, 5]
timeTriggerModes: [2]
change: [0.3, 0.5, 1.0]
direction: [0, 1]
interval: [1, 3, 5]
match: [0, 1, 2]
📦 مخرجات مجموعة البيانات
تُكتب المجموعات النهائية إلى القرص ضمن المسار التالي:
/datasets/parquet_{YYYYMMDD}/{category}/{direction}/{symbol}.parquet
مثال:
/datasets/parquet_20250713/meme/Both/WIF.parquet
🚀 ميزات خط أنابيب المحاكاة
- ✔️ تحميل الإعدادات المسبقة وتصفيتها
- ✔️ التحكم في الاتجاه (
شراء
/بيع
/كلاهما
) - ✔️ محاكاة متوازية آمنة على الذاكرة
- ✔️ تجميع ذكي، وتسجيل الوقت المتوقع، وتتبع معرف التشغيل
- ✔️ وضع اختبار تجريبي اختياري للمعاينة
- ✔️ دعم التصدير إلى CSV
🧼 التحقق من سلامة البيانات وإصلاحها
- ✔️ التحقق من بنية رؤوس البيانات
- ✔️ تخطي تلقائي للصفوف التي تحتوي على Null أو NaN أو تداولات صفرية
- ✔️ نسخ احتياطي بامتداد .bak قبل استبدال الملفات التالفة
- ✔️ إعادة الحفظ بصيغة مضغوطة
.gz
- ✔️ سجلات تصحيح ونقل الملفات التالفة إلى
__bad__/
- ✔️ معالجة آمنة للبيانات المتعددة باستخدام الخيوط (Thread-safe)
📚 الفئات المدعومة
تمثل هذه الفئات قطاعات السوق المنطقية أو أنواع التوكنات.
يمكنك تكوين أي مجموعة منها في ملف config.yaml
.
- AI
- bitcoin-layer2
- bluechip / bluechip-alt
- defin / defin-alt
- enterprise-alt
- gaming
- highcap-alt
- high-volatility-alt
- identity
- infrastructure
- layer1 / layer2 / layer1-highcap
- legacy / legacy-alt
- meme
- metaverse
- new-alt
- ordinals
- pow-alt
- stablecoin
- storage
- video
- zero-knowledge
💡 ملاحظات
- بناء المجموعات يتطلب موارد CPU/ذاكرة عالية. اضبط
maxMemoryMB
وwriteThreshold
وفقًا لذلك. - استخدم
isDryRun: true
للتحقق من الإعدادات ومعاينة التكرارات بدون إنشاء ملفات. - الحد الأقصى للتكرارات يساعد على تجنب استهلاك الذاكرة في مجموعات التكرار الكبيرة جدًا.
- جميع المحاكيات قابلة لإعادة التشغيل باستخدام نفس
RunId
والإعدادات.