النتائج 166 إلى 180 من 378
- 07-03-2020, 09:33 PM #166
- 07-03-2020, 09:42 PM #167
- 07-03-2020, 09:44 PM #168
- 07-03-2020, 09:50 PM #169
- 07-03-2020, 09:54 PM #170
نعيد الوضع كما كان, ثم نتحدث عن الدوال الأخرى لـ IndicatorInfo
سواء من خلال مثال الماكد او من خلال مثالنا الأول, فأنت الآن كمبتدئ لايهمك نوع المؤشر أو هدفه بقدر مايهمك القدرة البرمجية لتصميم اي مؤشر, وبناء عليه لابد من سعة الإطلاع ويستحسن الإحاطة بكل شيء علما حول هذا الأمر.
- 07-03-2020, 10:00 PM #171
عرفنا 18 دالة!! 9 و 9!!
كم عدد الدوال الكلي؟
كنت قد صممت سابقا خبيرا يطرح لك دوال اي كلاس او اي انترفيس في الكونسول مرقمة على 3 ابواب:
1) يطرح الفليدز مرقمة Fields
2) يطرح الكوسنتركتور مرقمة Constructors
3) يطرح الدوال مرقمة Methods
انسخه من فضلك واحفظه تحت Strategy فولدر ثم كمبلة: (برنامج خطير ) ويغنيك عن الذهاب الى API كل شوي! الا بحثا عن التفاصيل,
كود:package jforex; import java.lang.reflect.*; import java.lang.Class; import com.dukascopy.api.*; public class DUKA_REFLECTION_anyClass implements IStrategy { private IContext context; public void onStart(IContext context) throws JFException { this.context = context; try { Class c=Class.forName("com.dukascopy.api.indicators.IndicatorInfo"); Method m[]=c.getDeclaredMethods(); for(int i=m.length-1;i>=0;i--)context.getConsole().getOut().println((i+1)+"-----"+m[i]); context.getConsole().getOut().println("Methods........"); Constructor con[]=c.getDeclaredConstructors(); for(int i=con.length-1;i>=0;i--)context.getConsole().getOut().println((i+1)+"-----"+con[i]); context.getConsole().getOut().println("Constructors........"); Field f[]=c.getDeclaredFields(); for(int i=f.length-1;i>=0;i--)context.getConsole().getOut().println((i+1)+"-----"+f[i]); context.getConsole().getOut().println("Fields........"); } catch (Throwable e) { context.getConsole().getOut().println(e); } } public void onAccount(IAccount account) throws JFException {} public void onMessage(IMessage message) throws JFException {} public void onStop() throws JFException {} public void onTick(Instrument instrument, ITick tick) throws JFException {} public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {} }
- 07-03-2020, 10:07 PM #172
لـ IndicatorInfo Class يوجد 35 دالة و 3 كونستكتورات و 15 فيلدز
الدوال المحوطة بالأحمر -- انت already فاهمها وخالص
الملف المرفق 521176
والمثودز:
الملف المرفق 521177
- 07-03-2020, 10:07 PM #173
درجتك الان 18 من 35--يعني انت تعرف 18 دالة من 35 دالة! لاتنسى بعضها deprecated وبالتالي درجتك اعلى من 18 على وجه اليقين.
- 07-03-2020, 10:14 PM #174
لاحظ الكونستركتور تحت الترحيل يزيد عن التفصيلي بـ 1 بوووولين!!
الملف المرفق 521178
- 07-03-2020, 10:20 PM #175
- 07-03-2020, 10:26 PM #176
والمستويات في الصورة الاخيرة في اخر رد رسمتها انا يدوي,
كيف نرسمها برمجيا؟؟
يدوي:
وضعت الماوس على خط المؤشر ثم ضغطة واحدة ثم رايت كلك ثم اختيار edit indicator---لاحظ عنوان الشاشة في الصورة التي فيها إضافة ال levels
ثم بعلامة الزايد الخضراء اعلى اقصى اليمين اضفت الخطوط وغيرت القيم الى 0.002 سالب وموجب, مع تغيير نوع الخط ولونه الخ
- 07-03-2020, 10:29 PM #177
لاحظ في الصورة الاولى في الرد قبل الاخير:
كود:java.util.List<LevelInfo> levelsInfo
لستة يعني من نوع List
تحتاج 20 دقيقة صافية مركزة تقرأ في أي موقع تعليمي للمبتدئين جافا حول List
دعنا نحدد هدفنا الآن وهو رسم 4 خطوط لفل, عند 0.001 و 0.002 و سالب 0.001 و سالب 0.002 برمجياً على مؤشر الماكد أعلاه اللي شغالين عليه
يعني لِستة من اربع عناصرآخر تعديل بواسطة سلمان_العتيبي ، 07-03-2020 الساعة 10:34 PM
- 07-03-2020, 10:39 PM #178
- 07-03-2020, 10:43 PM #179
كلاس!! class !!
اذن نستطيع خلق كائنات من خلاله -- هو نوع!
نريد اربع كائنات, لأننا نريد رسم اربع مستويات؟ داخل الكوسنتركتور نضع قيمة من نوع دبل ونعرف قيمنا الاربع من نوع double وهي
0.001
0.002
-0.002
-0.002
سنسمي هذه الكائنات L1 و L2 و L3 و L4
الكود اسفل ينشئ اربع كائنات من نوع levelsInfo :
كود:LevelInfo L1=new LevelInfo(+0.001); LevelInfo L2=new LevelInfo(-0.001); LevelInfo L3=new LevelInfo(+0.002); LevelInfo L4=new LevelInfo(-0.002);
نضيفها الى اللستة؟
ليش؟
لأن الدالة الخاصة بالمستويات, المتغيرات داخل اقوسها من نوع List وقيم عناصر هذه اللستة من نوع LevelInfo
نحن الان تخلصنا من قيم العناصر--يعني انشأناها ومنحناها قيم حسب الكوسنتركتور المناسب.
لستة!! يعني نحتاج انشاء متغير جديد؟
ولكن List عبارة عن Interface وليس class وبالتالي يستخدم للتعريف فقط ولكن لايمكن ان يستخدم للانشاء باستخدام new ??
؟؟؟
مالحل؟؟
الحل نستخدم احد الكلاسات التي تنفذ هذا الانترفيس ونعني تحديدا الكلاس الشهير ArrayList ؟؟
اذن التعريف من خلال List بينما الانشاء او خلق الكائن الجديد من خلال ArrayList لأن الأخيرة class وليست interfaceآخر تعديل بواسطة سلمان_العتيبي ، 07-03-2020 الساعة 10:53 PM
- 07-03-2020, 10:56 PM #180
انظر للصورة, فنحن محكومين او مجبورين على ان تكون لستة List قيم من نوع LevelInfo
الملف المرفق 521182