النتائج 1 إلى 8 من 8
الموضوع: طلب مؤشر بفكره جديده
- 10-08-2024, 12:11 PM #1
طلب مؤشر بفكره جديده
السلام عليكم ورحمة الله وبركاته
اذا ممكن احد من الاخوه المبرمجين يتكرم ويبرمج هذا المؤشر
الانحراف المعياري لمجموع الاغلاق والافتتاح والهاي واللو للشمعه السابقه افتراضي
يكون على شكل خط افقي اعلى وخط افقي ادنى
المتغيرات في نافذة in put هي التحكم بالوان الخطين
والتحكم برقم الشمعه السابقه
التحكم بالانحراف (الدفييشن )والافتراضي يكون 2
يعني يشبه فكرة مؤشر البولنقر نوعا ما
وشكرا مقدما
- 10-08-2024, 12:23 PM #2
- 11-08-2024, 11:55 AM #3
السلام عليكم
الاخوة المبرمجين عملت المؤشر على الشيخ شات gtp ولاقصر بس فيه خطا في الكودالظاهر السطر 49 ياليت يتم تعديل الكود وايضا مراجعة الكود كاملا
كود://+------------------------------------------------------------------+//| StdDev.mq4 | //| Copyright 2023, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "2023" #property link "https://www.mql5.com" #property version "1.00" #property indicator_separate_window #property indicator_buffers 3 #property indicator_color1 Blue #property indicator_color2 Red #property indicator_color3 Red // Buffers for the indicator double StdDevBuffer[]; // Buffer for Standard Deviation double UpperBandBuffer[]; // Buffer for Upper Band double LowerBandBuffer[]; // Buffer for Lower Band // Input variables for user control input int candle_number = 1; // رقم الشمعة (1 = الشمعة السابقة) input double upper_deviation = 2.0; // قيمة الانحراف الأعلى input double lower_deviation = -2.0; // قيمة الانحراف الأدنى //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(3); SetIndexBuffer(0, StdDevBuffer); SetIndexBuffer(1, UpperBandBuffer); SetIndexBuffer(2, LowerBandBuffer); SetIndexStyle(0, DRAW_LINE); SetIndexStyle(1, DRAW_LINE); SetIndexStyle(2, DRAW_LINE); SetIndexLabel(0, "Standard Deviation"); SetIndexLabel(1, "Upper Band"); SetIndexLabel(2, "Lower Band"); return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const double &spread[]) { // التأكد من أن رقم الشمعة المطلوب لا يتجاوز عدد الشموع المتاحة if (candle_number < 1 || candle_number >= rates_total) return (rates_total); int index = rates_total - candle_number; // تحديد الفهرس للشمعة المطلوبة // حساب مجموع الأسعار للشمعة المحددة double total_price = open[index] + high[index] + low[index] + close[index]; // حساب الانحراف المعياري double mean = total_price / 4; // المتوسط double sum_squared_diff = 0.0; for (int i = 0; i < rates_total; i++) { double price = open[i] + high[i] + low[i] + close[i]; sum_squared_diff += MathPow(price - mean, 2); } double std_dev = MathSqrt(sum_squared_diff / rates_total); StdDevBuffer[0] = std_dev; // تخصيص قيمة الانحراف المعياري للمؤشر // رسم الخطوط الأفقية UpperBandBuffer[0] = mean + (upper_deviation * std_dev); LowerBandBuffer[0] = mean + (lower_deviation * std_dev); return (rates_total); } //+------------------------------------------------------------------+
الخطا باللون الاحمر وايضا مرفق صوره للخطأ
- 11-08-2024, 07:02 PM #4
- 12-08-2024, 12:05 AM #5
- 03-09-2024, 06:58 AM #6
- 04-09-2024, 07:26 AM #7
- 14-09-2024, 08:58 PM #8
يعطيكم العافية اخواني