النتائج 1 إلى 15 من 88
- 13-12-2017, 12:22 AM #1
كيف ترسم فيبو "للمبتدئين"--خطوات سهلة على اخر نقطتي زقزاق.
بسم الله الرحمن الرحيم,
أما بعد
1) نريد نقطتين "الانكور بونتس" فيبو 0 وفيبو 100 وتعودنا انهما قمة وقاع او قاع وقمة
2) اذن بالمنطق سنستخدم اسهل شيء متاح وهو الزقزاق --يفر من اليمين لليسار وليس العكس للشموع شمعة شمعة حتى يجد نقطتين حدث عندجها انكسار للزقزاق
3) سيحتقط البرنامج بهاتين القيمتين ويحفظ ايضا رقم شمعة كل منهنا ليعرف ايهما حدث اولاً
4) سنستخدم دوال او خصائص الفيبو المختلفة وهي:
---------4-1) نحدد عدد مستويات فيبو التي نريد رسمها (يسمح الميتا حتى 32 مستوى)
---------4-2) نحدد الانكور بوينتس بشكل صحيح (يعني ماهي نقطة فيبو 0 وماهي نقطة فيبو 100% )
---------4-3) نرسم
---------4-4) نختار لون الخطوط
---------4-5) نضيف الدسكربشن
- 13-12-2017, 12:23 AM #2
مصطلحات الانكور بونتس anchor points هي الزوج المرتب (زمن وسعر فيبو 0%) و الزوج المرتب (زمن زسعر فيبو 100%)
- 13-12-2017, 12:52 AM #3
الموضوع تعليمي بحت للمبتدئين جدا جدا جدا لأحد أعقد الأفكار:
يعني حسب الكلام اعلاه نبدأ بالزقزاق وقلنا من اليمين لليسار
وطالما سنستخدم مؤشر موجود في الميتا هذا يحتم أن نستخدم دالة iCustom وقيم الزقزاق هي قيمه سعرية لذا هي من نوع double
خطوة 1: -- بحث!! يعني نستخدم for الفرارة التي ستفر على الشموع من اليمين لليسار.
اخر شمعة مغلقة هي رقم #1
واقدم شمعة متاحة على التشارت نعلم أن رقمها دائما هي #: Bar-1
- 13-12-2017, 12:57 AM #4
من اول الكود وحتى آخره لن نستخدم الا دالة OnInit لأننا لانحتاج غيرها--فنحن نريد رسم الفيبو مرة واحدة فقط برمجياً!!
خطوة 2: -- نستخدم دالة iCustom لإحضار قيم الزقزاق عند كل شمعة جديدة i
سنحفظ القيمة في المتغير من نوع double وسنسميه value
(دبل لأن القيمة سعر يعني عشرية)
يعني نظيف سطر واحد فقط على الكود اعلاه:
آخر تعديل بواسطة فيلسوف البادية ، 13-12-2017 الساعة 01:00 AM
- 13-12-2017, 01:22 AM #5
مكونات iCustom --- دائما موحدة لأي مؤشر وأحد أسهل الدوال استخداما في الميتا--لانها مجرد جلب قيم -- صعوبتها فقط التالي للمبتدئ, عندما تعرفها تختفي الصعوبة:
المكونات:
اولا اسم الزوج او NULL اذا تريد زوج التشارت
ثم ثانيا الفريم الزمني وهو هنا 0 ويعني الفريم الحالي
ثم ثالثا اسم المؤشر كما يظهر لك تحت مؤشرات او في صندوق المتغيرات الخارجية-عندما تفتح صندوق خصائص المؤشر--رايت كلك--يظهر لك في الاعلى كلمة Zigzag--تنسخها كماهي في المعطة الثالث--
رابعا: رقم البفر وهنا 0 -- يعني الخط الاول في الصورة من الثلاث خطوط التي رسمها الزرزاق على التشارت--لانه البفر الذي لونه احمر وتنسخ رقمه الى خانته في iCustom بعد كلمة Zigzag
وأخيرا رقم الشمعة i
كل شيء موضوح على الصورة|:
من فضلك جرب مؤشر اخر وليكن الماكد متبعا نفس الخطوات.
استخدم Print لترى النتيجة في صفحة Journal
\آخر تعديل بواسطة فيلسوف البادية ، 13-12-2017 الساعة 01:25 AM
- 13-12-2017, 01:26 AM #6
تبين لي ان قيم الزقزاق = 0 الا قيم الفيرتكس "الانقلاب" وبالتاللي هذا لوحده شرط كافي لاكتشاف قيم الفيرتكس "رؤوس الزقزاق"
لايغرك الخط الاحمر الذي يمر على عشرات الشموع لكي يصل القمة للقاع--خط وهمي فقط ليصل النقطتين -- ولكن لو استخدمت value لقيمه ستجد انها 00 واذا عدت لاصل المؤشر -- الكود الاصلي--ستعلم انها ستكون صفر.
واكاد أجزم ان هناك من بنى طرق عليها متوهما ان لها قيم كما تراها على التشارت!
- 13-12-2017, 01:33 AM #7
الآن للتبسيط و هروبا من المصفوفات--نريد ان نعرف متغيرين ليحفظوا قيمتين--اول قيمتين للزقزاق ثم يكسر اللوب ويتوقف
مثلا تشارت اليورو مجموع شموعه 25030 شمعة--كل الشموع المتاحة --نريده ان يبدأ من شمعة 1 ويستمر حتى يجد اول قيمتين ثم يتوقف ولايكمل حتى الشمعة رقم 25029
اذا وجد اول قيمة غير صفرية عند الشمعة رقم 13 -- سيحفظ قيمتها السعرية تحت المتغير First وايضا يحفظ رقم الشمعة تحت المتغير FirstCandle
اذا وجد ثاني قيمة غير صفرية عند الشمعة رقم 56 -- سيحفظ قيمتها السعرية تحت المتغير Second وايضا يحفظ رقم الشمعة تحت المتغير SecondCandle
ثم يتجاهل الشموع من 57 وحتى 25030 -- يحدث بريك break للوب!! يعني مايكمل بقية اللوووووب
وفي هذه الحالة كلمة اول وكلمة ثاني--هي قيمة 1 وقيمة 2 -- ايضا سنعرف متغير صحيح int يحمل قيمتها باسم index وقيمته الاولى = 0آخر تعديل بواسطة فيلسوف البادية ، 13-12-2017 الساعة 01:35 AM
- 13-12-2017, 01:39 AM #8
اضفنا سطر واحد لتعريف index -- الذي دوره معرفة رقم او تسلسل او ترتيب نقطة الزقزاق التي وصلنا لها
-
-
-
كل مرة يجد الخبير أعلاه قيمة غير صفرية للزقزاق يفهم البرنامج انها نقطة انقلاب فيزيد قيمة الاندكس بمقدار 1 صحيح.
- 13-12-2017, 01:50 AM #9
إذن الفكرة بسيطة جدا--كلما وجد قيمة غير صفرية يستخدم علامتي ++ التي تعني اضف واحد صحيح للاندكس index
حتى يجد قيمتين غير صفريتين فيكسر اللوب باداة الكسر البرمجي break
وكل مرة يجد قيمة صفرية يحفظها تحت المتغير المناسب ويحفظ معها رقم شمعتها! رقم شمعة قاع او قمة الزقزاق -- التي نسميها نحن الازواج المرتبة او الانكور بونتس.
- 13-12-2017, 01:55 AM #10
وكالعادة نضيف سطر برمجي واحد
لاحظ السهولة--ياخذ قيمة الكوستوم ثم يفتش هل هي 0 أم لا,
اذا لم تكن صفر يحدث زيادة في الاندكس
- 13-12-2017, 02:03 AM #11
الاندكس قيمته الاساسية = 0
اذا حدث هناك قيمة غير صفرية ستصبح قيمته 1 صحيح وهنا نعلم انها اول نقطة وجدها للبرنامج للزقزاق "نقطة قمة أو قاع" -- ونحن حتى الان برمجياً لن نعرف هل هي قمة أو قاع!!
إذا كانت قيمته 1 صحيح احفظ قيمة الزقزاق value عند هذه الشمعة في المتغير First
واحفظ رقم شمعتها i في المتغير FirstCandle
- 13-12-2017, 02:08 AM #12
الكود أسفل: 1) بحثنا 2) ثم وجدنا 3) ثم احتفظنا بأول نقطة زقزاق:
-
-
-
-
آخر قيمة للاندكس كانت 1 صحيح
الآن لو وجد نقطة زقزاق أخرى سيزيد القيمة 1 صحيح -- يعني - ستصبح 2 صحيح
- 13-12-2017, 02:12 AM #13
وتعاد نفس الخطوات للبحث عن النقطة الثانية للزقزاق--ستستمر for الفرارة في الدوران حتى تجد النقطة الثانية
إذا وجدت نقطة ثانية فإن قيمة index ستصبح 2 وبالتالي وفق الجملة الشرطية نحتفظ بقيمها في متغيرين خاصين بالنقطة الثانية كما شرحنا قبل 4 ردود
من فضلك اذا index==2 احفظ قيمة الزقزاق ورقم شمعته تحت المتغيرين Second و SecondCandle
- 13-12-2017, 02:15 AM #14
نفس خطوات اول نقطة زقزاق طباقاً وفاقاً!! بحثا وايجادا وحفظا
اذا تحب نقاط اضافية قليلة مممكن تستمر هكذا!! نسخ ولزق فقط تغير الاندكس في اشلرط!
- 13-12-2017, 02:18 AM #15
نحن نريد نقطتين فقط! يعني انتهى ما نريد!!
وافترض اخر نقطة صادف انها عند الشمعة رقم 100!! ولكن for الفرارة مصممة للبحث حتى اخر الشمعة وقلننا افرض مثلا انها عند 25030 !!
من الحماقة ان تجعله يستمر في البحث بعد شالمعة رقم 100
استخدم break لتنهي عمل اللوووب قبل موعده!
لابد تضع شرط الكسر
هذا الشرط: لن تختلف معي انه هو اذا قيمة الاندكس تساوي 2 -- توقف
يعني أحسن مكان لها هو داخل بلوك اخر جملة شرطية--في الرد السابق--بعد تخزين القيم مباشرة
طالما عرفت القيمتين!! ماذا تريد اكثر من ذلك--غير ان يقلب وجهه ويتوقف!آخر تعديل بواسطة فيلسوف البادية ، 13-12-2017 الساعة 02:23 AM