scripting
أنواع السكريبتات
Indicator وAlert وScreener وDrawing وStrategy — ما يفعله كل سطح وكيف يختلف.
نفس اللغة تستهدف خمسة أسطح. لكل نوع دلالات مختلفة قليلاً — ما يعنيه
output، وما يعمل وقت التقييم، وأين تظهر النتيجة.
Indicator
يرسم سلسلة أو مؤشر تذبذب على الرسم. output هو القيمة التي تكشفها
لسكريبتات أخرى (يمكن تركيب المؤشرات).
let r = rsi(close, 14)
plot(r, pane: "rsi")
output r
بيئة التشغيل: معاينة الرسم، فورية. لا قدرة على إصدار أوامر.
Alert
output قيمة منطقية. وقت التشغيل يطلق notify(...) كلما أصبحت true عند
إغلاق شمعة. باقة Pro ترسل عبر عامل سحابي ٢٤/٧.
let trigger = close > sma(close, 200) and volume > sma(volume, 20) * 2
notify(when: trigger, channel: "discord")
output trigger
Screener
حلقة تُرجع الرموز المطابقة لشرط. تعمل على قائمة مراقبة بجدول قابل للتخصيص.
for sym in watchlist("us-large-cap") {
let hit = rsi(close, 14) < 30 and close > vwap()
if hit { yield sym }
}
Drawing
أشكال برمجية على الرسم. لا output — تأثيرات جانبية فقط.
let pivot = high[1]
draw_zone(top: pivot, bottom: pivot - atr(14), fill: accent, opacity: 0.1)
Strategy
كود يُصدر أوامر. يُختبر باك تيست على نفس محرك التنفيذ الحقيقي. قاعدة
الانعكاس التلقائي تحوّل قيمة منطقية بنمط مؤشر إلى مراكز long/flat حين لا
توجد استدعاءات buy/sell صريحة.
let fast = sma(close, 12)
let slow = sma(close, 26)
if cross_up(fast, slow) { buy(qty: 1) }
if cross_down(fast, slow) { sell_all() }
مصفوفة القرار
| الحاجة | استخدم | |---|---| | رسم خط | Indicator | | إشعار عند شرط سعر | Alert | | تصفية قائمة مراقبة يومياً | Screener | | إبراز مناطق | Drawing | | توليد أوامر | Strategy |