النتائج 1 إلى 11 من 11
الموضوع: history downloader
- 16-09-2022, 07:48 AM #1
history downloader
هلا ابو سلمان
اود اسالك ما هي الدالة الرئيسية التي تستخدمها في برنامجك history downloader
عندي اكسبرت احب اشيك عالداتا قبل ما يبدا بالشغل
طبعا حبيت برنامجك و شفته سريع لهالسبب اسال عن الدالة التي تستخدمها
تحياتيكود:if(IsExpertEnabled()) { if(ArraySize(pairs)>eps) { if(pair_OR_frame=="FRAMES") { COUNT++; if(COUNT>MAX_COUNTER) { pir++; COUNT=0; repeat=0; } if(pir>=ArraySize(period)) { repeat=0; ji++; pir=0; COUNT=0; } if(ji>=ArraySize(pairs)) { repeat=0; ji=0; COUNT=0; } int barsp=0; ChartSetSymbolPeriod(0,pairs[ji], period[pir]); y=yd10; repeat=0; while(repeat<MAX_REPEAT) { if(!IsExpertEnabled() || IsStopped()) {return;} repeat++; ChartNavigate(0,CHART_END,-30000); barsp=iBars(pairs[ji],0); if( !IsExpertEnabled()) { return; } RefreshRates(); int GG=MathMod(ji,TOTAL_PAIRS_PER_SHEET); string ii=string(ji); if(ji<=9) ii="00"+string(ji); else if(ji<=99) ii="0"+string(ji); clr=C'0,0,0'; string pair_a=pairs[ji]; clr=C'99,0,99'; x=-1; dx=v005-x+1; x=v060; dx=v080-v060+1; clr=C'111,44,0'; Create_Button("PAIR_"+ii+"_PASK",DoubleToString(COUNT,0)+" r"+DoubleToString(repeat,0),x,y+GG*(dy0-1),dx,dy0,F_O_N_T,clrRed,C'244,244,244',C'244,244,244',""); x=v080; dx=v095-v080+1; clr=C'0,99,0'; int bars=iBars(pairs[ji],0); Create_Button("PAIR_"+ii+"_PBARS",DoubleToString(bars,0),x,y+GG*(dy0-1),dx,dy0,F_O_N_T,clr,C'244,244,244',C'244,244,244',""); x=v095; dx=v130-v095+1; clr=C'99,0,0'; string date=TimeToString(iTime(pairs[ji],0,bars-1),TIME_DATE|TIME_MINUTES); Create_Button("PAIR_"+ii+"_PDATE",date,x,y+GG*(dy0-1),dx,dy0,F_O_N_T,clr,C'244,244,244',C'244,244,244',""); } } else { COUNT++; if(COUNT>MAX_COUNTER) { ji++; COUNT=0; repeat=0; } if(ji>=ArraySize(pairs)) { repeat=0; ji=0; pir++; COUNT=0; } if(pir>=ArraySize(period)) { pir=0; repeat=0; COUNT=0; } barsp=0; ChartSetSymbolPeriod(0,pairs[ji], period[pir]); y=yd10; repeat=0; while(repeat<MAX_REPEAT) { if(!IsExpertEnabled() || IsStopped()) {return;} repeat++; ChartNavigate(0,CHART_END,-30000); barsp=iBars(pairs[ji],0); if( !IsExpertEnabled()) { return; } RefreshRates(); GG=MathMod(ji,TOTAL_PAIRS_PER_SHEET); ii=string(ji); if(ji<=9) ii="00"+string(ji); else if(ji<=99) ii="0"+string(ji); clr=C'0,0,0'; pair_a=pairs[ji]; clr=C'99,0,99'; x=-1; dx=v005-x+1; x=v060; dx=v080-v060+1; clr=C'111,44,0'; Create_Button("PAIR_"+ii+"_PASK",DoubleToString(COUNT,0)+" r"+DoubleToString(repeat,0),x,y+GG*(dy0-1),dx,dy0,F_O_N_T,clrRed,C'244,244,244',C'244,244,244',""); x=v080; dx=v095-v080+1; clr=C'0,99,0'; bars=iBars(pairs[ji],0); Create_Button("PAIR_"+ii+"_PBARS",DoubleToString(bars,0),x,y+GG*(dy0-1),dx,dy0,F_O_N_T,clr,C'244,244,244',C'244,244,244',""); x=v095; dx=v130-v095+1; clr=C'99,0,0'; date=TimeToString(iTime(pairs[ji],0,bars-1),TIME_DATE|TIME_MINUTES); Create_Button("PAIR_"+ii+"_PDATE",date,x,y+GG*(dy0-1),dx,dy0,F_O_N_T,clr,C'244,244,244',C'244,244,244',""); } } } }
- 16-09-2022, 07:49 AM #2
متغيرات خارجية ذات علاقة
كود:int MAX_REPEAT=50; int MAX_COUNTER=1; int COUNT=0; string DASH_NUMBER_OF_LOST_CANDLES="NO"; int ji; ENUM_TIMEFRAMES period[]={PERIOD_M1,PERIOD_M5,PERIOD_M15,PERIOD_M30,PERIOD_H1,PERIOD_H4,PERIOD_D1,PERIOD_W1,PERIOD_MN1}; string periods[]={"M1","M5","M15","M30","H1","H4","D1","W1","MN1"}; int pir=0;
- 16-09-2022, 07:51 AM #3
وبالتأكيد غير مسبوقة
أتمنى تأتون بشيء أفضل وأقوى .. ولو بالبناء على الكود أعلاه . .
- 16-09-2022, 07:52 AM #4
سبب السرعة أنه كل تكة أو ثانية يسوي iterate للفريم أو الزوج
بدلا من 28 زوج في نفس التكة أو الثانية ..
وشرحتها أخي بكثافة في موضوع فوركس فاكتوري ردود اخر ست شهور
يعني بالعربي الغيت اللووووووووبنق . . no loops . . . الفكرة نفسها إلهام من ربي
.
تأمل الكود أعلاه . . هل تجد فيه غباء for ؟؟
- 16-09-2022, 07:54 AM #5
أي: التكة OnTick أو التايمر OnTimer جعلتها هي اللووووووووووب . .
- 16-09-2022, 07:55 AM #6
في الكود أعلاه . . لاحظ متى تتغير ij
- 16-09-2022, 07:58 AM #7
تعد أولا زوج التشارت أو فريمه ChartSetSymbolPeriod
ثم تحركه يمين ChartNavigate عدد مرات من اختيارك
وهذا الشرح كافي لأي مبتدئ برمجة .. فما بالك بالمتخصص
- 16-09-2022, 08:00 AM #8
IsExpertEnabled
هاذي لتعطيله من فوق بالماوس . . أسرع شيء ممكن .. أسرع تصرف . . أو تدخل لوقفه فوراً . .
- 16-09-2022, 08:02 AM #9
انتهى
- 18-09-2022, 11:51 AM #10
نعم انتهي
- 19-10-2022, 10:38 PM #11
مشكور حبيب القلب ابو سلمان .. اول مرة اشوف هالموضوع .. طبعا الرسالة في اول الموضوع خطي
فعلا فكرة ذكية .. و انا اشهد ... فعلا باستخدام الفور لوب احس البرامج تعلق .. رح اضمن هالطريقة في الاكسبرت خاصتي و اشوف نتايجها
تحياتي ..