حسنا أرفق المؤشر وسوف أوضح لك التعديل في الكود مباشرة
Printable View
وعليكم السلام ورحمة الله وبركاته
بمعنى أنك تريد أن يكون المؤشر موجود مره واحده فقط على الشارت مهما كان عدد المرات التي قمت بسحبه على الشارت فيحذف النسخه السابقه ويحدث الحاليه على الشارت
مرفق المؤشر قمت بإضافة التعديل له بنفس الداله التي ذكرها الأستاذ جميل
كود PHP:
int cnt;
for(int i=0;i<ChartIndicatorsTotal(0,0);i++)
{
if(ChartIndicatorName(0,0,i)=="Bands_sa1")cnt++;
}
if(cnt>1)ChartIndicatorDelete(0,0,"Bands_sa1");
المؤشر فى المرفقاتاقتباس:
حسنا أرفق المؤشر وسوف أوضح لك التعديل في الكود مباشرة
تذكير بالمطلوب
1- ان يكون الشرط فى حاله خط المقاومه :- هاى الشمعة 1 يساوىخط المقاومه (+او- نقطه)
والعكس لخط الدعم
2- ان يرسم الاسم طالما الخطوط موجوده على كل الشموع الموجود عليها الخطوط
3 - ان يحدث الخطوط تلقائيا
وبارك الله فيك
تحياتى
تفضل
كود PHP:
double profitpips()
{
double pips;
for(int i=OrdersTotal()-1;i>=0;i--){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber){
double p=OrderOpenPrice();
if(OrderType()==OP_BUY){
pips+=(Ask-p)/point
}
if(OrderType()==OP_SELL){
pips+=(p-Bid)/point
}
}
}
return(pips);
}
للرفعاقتباس:
المؤشر فى المرفقات
تذكير بالمطلوب
1- ان يكون الشرط فى حاله خط المقاومه :- هاى الشمعة 1 يساوىخط المقاومه (+او- نقطه)
والعكس لخط الدعم
2- ان يرسم الاسم طالما الخطوط موجوده على كل الشموع الموجود عليها الخطوط
3 - ان يحدث الخطوط تلقائيا
وبارك الله فيك
تحياتى
السلام عليكم مستر دولار - أسامه
بارك الله فيك
1- عندى إكسبيرت كلما أعمل له كمبيل تظهر رساله الخطأ هذه - Warning Message
Function "last_open_com" is not referenced and will be removed from exp-file
2-وعند عمل تجربه له تظهر رساله الخطأ هذه فى الجورنال
2014.08.11 06:03:09 TestGenerator: unmatched data error (volume limit 373 at 2014.08.06 22:00 exceeded)
ما معنى هذه الرسائل وكيف أحلها ؟
أنتظر ردك ، شكرا مقدما
بالنسبه للخطأ الأول كما أخبرك الأستاذ جميل
بالنسبه للخطأ الثاني فهو إختلاف حجم الشموع ( الفوليوم ) بين التايم فريم الأقل و التايم فريم الأكبر
فعند عمل باك تست من نوع every tick حتى يكون الباك تست أكثر دقه فيبحث الميتاتريدر عن أصغر تايم فريم ويجلب البيانات التاريخيه الموجوده لكن هنا عندما قارن بين التايم فريم الصغير والتايم فريم الحالي وجد إختلاف في حجم الفوليوم بالتالي ظهر هذا الخطأ , لكنه لن يؤثر بشكل كبير على الباك تست غير أن دقة الباك تست ستكون أقل
لديك عدة أخطاء في برمجة المؤشر
أولا بما أنك تريد تحديث الخطوط تلقائيا فيجب أن تضع الكود في الداله start وليس init
ثانيا بما أنك تريد مقارنة جميع الشموع فيجب أن تستخدم الحلقه for حتى تبحث في كل الشموع وليس
لأنك بهذه الحاله إستدعيت فقط قيمة الشمعه السابقه والإفتتاح الحاليكود PHP:
hiarrow1= NormalizeDouble (iHigh (Symbol(),0,1),Digits);// هاى الشمعه السابقه
lowarrow1 = NormalizeDouble(iLow (Symbol(),0,1),Digits);// لو الشمعه السابقه
closearrow1 = NormalizeDouble(iClose (Symbol(),0,1),Digits);// كلوز الشمعه السابقة
openarrow0 = NormalizeDouble(iOpen (Symbol(),0,0),Digits);// اوبن الشمعه الحاليه
يجب أن تراجع الدروس التعليميه فلديك أخطاء في الأساسيات
مرفق المؤشر قمت بتعديل الأجزاء الأساسيه له والشروط الرئيسيه قم بتطبيق نفس الطريقه بعد تعديل الأخطاء الأخرى
اشكرك جدا جدا جدا جدااقتباس:
ثانيا بما أنك تريد مقارنة جميع الشموع فيجب أن تستخدم الحلقه for حتى تبحث في كل الشموع وليس
كود PHP:
hiarrow1= NormalizeDouble (iHigh (Symbol(),0,1),Digits);// هاى الشمعه السابقه
lowarrow1 = NormalizeDouble(iLow (Symbol(),0,1),Digits);// لو الشمعه السابقه
closearrow1 = NormalizeDouble(iClose (Symbol(),0,1),Digits);// كلوز الشمعه السابقة
openarrow0 = NormalizeDouble(iOpen (Symbol(),0,0),Digits);// اوبن الشمعه الحاليه
لأنك بهذه الحاله إستدعيت فقط قيمة الشمعه السابقه والإفتتاح الحالي
يجب أن تراجع الدروس التعليميه فلديك أخطاء في الأساسيات
مرفق المؤشر قمت بتعديل الأجزاء الأساسيه له والشروط الرئيسيه قم بتطبيق نفس الطريقه بعد تعديل الأخطاء الأخرى
المؤشر يعمل بشكل جيد جدا
ومهما فعلت فلن اوفيك حقك
فعلا مبدع
اعرف هذه المعلومه وكنت كلما وضعت الكود فى داله ستارت لا يعمل المؤشراقتباس:
لديك عدة أخطاء في برمجة المؤشر
أولا بما أنك تريد تحديث الخطوط تلقائيا فيجب أن تضع الكود في الداله start وليس init
لكن هذه المره يعمل بشكل ممتاز
اما بالنسبه للداله for لم استطع استيعابها
اعتقد انك لو شرحت لى الكود بالعربى سأفهمها بأذن الله
ان كان لديك وقتكود PHP:
for(int i=1;i<iBarShift(Symbol(),0,iTime(Symbol(),1440,1),false);i++)
{
عموما بارك الله فيك وجزاك الله خير الجزاء
بالنسبه للحلقه for
الطبيعي أنك المفروض سوف تبحث في جميع الشموع على الشارت
لكن أنت هنا إستخدمت في متغيرات الإكسبرت الخارجيه رقم الشمعه التي تريد وضع الشروط لها لذلك إستخدمت نهاية البحث عند شمعة آخر يومكود PHP:
for(int i=1;i<Bars;i++)
فلو مثلا تريد البحث عن آخر يومين سوف تجعلها
وهكذاكود PHP:
for(int i=1;i<iBarShift(Symbol(),0,iTime(Symbol(),1440,2),false);i++)
يجب أن تراجع طريقة عمل الداله iBarShift فهي تعود بقيمة رقم الشمعه لأي توقيت تقوم بتحديده وفي هذا المثال إستخدمت الداله iTime لمعرفة توقيت إفتتاح شمعة اليوم
السلام عليكم ورحمة الله وبركاته
لو تكرمتم بشرح وعمل الكود التالي : الحصول على معلومات معينه من شمعة محددة ، مثلا اريد احدد الهاي واللو لأي شمعه سابقه مثلا الساعة 15 لكل يوم.
واذا كان هناك شرح وامثله للدوال الزمنية بارك الله فيكم
اشكرك اخى الفاضل مستر دولار على الرداقتباس:
بالنسبه للحلقه for
الطبيعي أنك المفروض سوف تبحث في جميع الشموع على الشارت
كود PHP:
for(int i=1;i<Bars;i++)
لكن أنت هنا إستخدمت في متغيرات الإكسبرت الخارجيه رقم الشمعه التي تريد وضع الشروط لها لذلك إستخدمت نهاية البحث عند شمعة آخر يوم
فلو مثلا تريد البحث عن آخر يومين سوف تجعلها
كود PHP:
for(int i=1;i<iBarShift(Symbol(),0,iTime(Symbol(),1440,2),false);i++)
وهكذا
يجب أن تراجع طريقة عمل الداله iBarShift فهي تعود بقيمة رقم الشمعه لأي توقيت تقوم بتحديده وفي هذا المثال إستخدمت الداله iTime لمعرفة توقيت إفتتاح شمعة اليوم
فى الحقيقة لم استطيع فهم الداله
كل ما فهمته من الداله هو
لو افترضنا ان الفريم هو اليومى
i هى ازاحه الشمعه
اذا كان ازاحه الشمعه (يوم امس) وازاحه الشمعه اقل من (اى بار) قم بزياده الازاحه
بمعنى اليوم السابق وهكذا
واعتقد ان فهمى خاطىء
لانه لو كان فهمى صحيح لكان من المفترض ان يرسم الخطوط على الشموع السابقه (يوم امس مثلا) على حساب
اغلاق اول امس وهكذا
والذى يحدث ان الاسهم ترسم على الايام السابقه لكن على الخطوط المرسومه على اليوم الحالى
___________________________
طلب اخر اخى الفاضل
انا لم اجرب برمجه الاكسبيرتات لذلك
ارجوا ارفاق اى اكسبيرت يبيع ويشترى عند ظهور الاسهم
واخبارى اين اضع الشروط فى الاكسبيرت
وارجوا الا اكون قد اثقلت عليك بطلباتى
تقبل تحياتى