اقتباس:
المشاركة الأصلية كتبت بواسطة ماجد كو
مشكور اخي ابو ايمن اخي وجدي الروابط التي ارفقتها احس ان فكرتها طويله انا كنت فاكر اعمل فقط اكبر من واصغر من ما بين الشموع السابقه والحاليه وبالتالي يعطينا النتيجه لاحظ رد الحبيب ابو ايمن للشراء بشرط الماكد كود PHP: if (macdMain > macdSignal && macdSignal >0)
وبطبيعة الحال المكد سيجنال يجب ان يكون فوق الصفر ولكن فعلا كيف نفهم الماكد ابو خطين لما يتقاطعان اسفل الصفر اذا من قطع من ؟؟ الامر يحتاج فهم وتجربه ومشكورييييييييييييين . |
هل عرفت كيف تعرف قيمة الخط ال main والخط ال signal في الماكد؟
إذا عرفت ذلك، فبسهولة ستنشئ 4 متغيّرات، واقرأ هذا الكود بتركيز وستفهم إن شاء الله:
كود PHP:
double MacdMain_1 = Bla Bla Bla; // نخزّن فيه قيمة خط الماكد الأساسي، للشمعة السابقة
double MacdSignal_1 = Bla Bla Bla; // نخزن فيه قيمة خط الماكد السيجنال، للشمعة السابقة
double MacdMain_2 = Bla Bla Bla; // نخزّن فيه قيمة خط الماكد الأساسي، للشمعة قبل السابقة
double MacdSignal_2 = Bla Bla Bla; // نخزن فيه قيمة خط الماكد السيجنال، للشمعة قبل السابقة
طبعًا لن تكتب Bla Bla Bla في الكود الحقيقي
المهم الآن، كيف نوظّف هذه المتغيّرات لكي نفتح صفقة شراء عند حدوث تقاطع بينهما؟
صفقة الشراء: يعني الخط الأساسي يقطع خط السيجنال لأعلى
بعبارة أخرى: الخط الأساسي أكبر من خط السيجنال
طيب وكيف نجعل الاكسبرت لا يفتح إلا حين التقاطع فقط؟
الإجابة: معنى كلمة تقاطع، أن قبله بشمعة كانت الشروط معكوسة، ولذلك: احتجنا لقيم الماكد للشمعة قبل السابقة
اقرأ الكود الآتي وستفهم بإذن الله
كود PHP:
if (MacdMain_1>MacdSignal_1 && MacdMain_2<MacdSignal_2)
{
// افتح شراء
}
طيب، هذا الكود لكي يفتح الاكسبرت الصفقات عند حدوث التقاطع، من دون أي شرط آخر
فماذا لو أردنا أن نفلتر التقاطعات، بأن لا نأخذ التقاطعات إلا التي فوق الصفر؟
سنكتب الآتي:
كود PHP:
if (MacdMain_1>MacdSignal_1 && MacdSignal_1>0 && MacdMain_2<MacdSignal_2)
{
// افتح شراء
}
وهناك كود آخر أدق، لكن افهم ما سبق وسيلبي طلبك إن شاء الله
وأي نقطة غير واضحة تفضل وسنفهمها معًا
لكن قبل السؤال: اقرأ بتركيز
والسلام عليكم