النتائج 1 إلى 15 من 15
الموضوع: طلبى من الاخ العبقرى السفير alsafir
- 07-12-2011, 05:07 AM #1
طلبى من الاخ العبقرى السفير alsafir
اخى الكريم كنت ارغب بمؤشر يقوم بالاتى
رسم مربع للرينج اليومى
(مع امكانية تحديد عدد الايام اللى يرسم عليها)
ويقوم ايضا برسم خط ترند من افتتاح اليوم الى اغلاقه (على نفس عدد الايام اللى احدده)
وفى خيار تالت انه يرسم ايضا خطوط افقية على هايات ولوهات الايام
وديه صارة توضح وجهة نظرى تحيااااااتى لك
ولك كل الشكر والاحترام والتقدير
- 07-12-2011, 02:25 PM #2
السلام عليكم ورحمة الله وبركاته
أقدم لك صادق إعتذاري فـ والله لا أستطيع ذلك كوني مامريت سابقا بمؤشرات ترسم الترند على الشارت ولا أعلم طريقة عملها الصحيحه
وحقيقة أحرجتني بفتح موضوع باسمي ، ولست محتاج لذلك لأساعدك جزاك الله خيراً
فأنا أجول في مواضيع القسم وأساعد فيما مكني فيه ربي
لكن أستاذي وأخي العزيز مستر دولار لن يقصر بإذن الله
شاكر ومقدر لك
والسلام عليكم ورحمة الله وبركاته
- 08-12-2011, 03:21 AM #3
- 09-12-2011, 02:44 AM #4
مستر دووووووووولار
- 09-12-2011, 10:01 PM #5
- 09-12-2011, 10:23 PM #6
سأشرح أولا الداله الخاصة برسم كائن على الشارت سواء كان ترند أو رسم مربع أو دائرة أو مهما كان
وهي الداله OjbectCreate
طريقة كتابتها كالآتي
كود PHP:ObjectCreate( string name, int type, int window, datetime time1, double price1, datetime time2=0, double price2=0)
type نوع الكائن ففي حالتنا هنا نريد رسم ترند ورسم مربع
فسوف نستخدم OBJ_RECTANGLE و OBJ_TREND
ويوجد أنواع غيرها كثيرا مثل
OBJ_VLINE لرسم خط رأسي
HLINE لرسم خط أفقي
OBJ_TEXT لكتابة نص على الشارت
---
window النافذه التي سيتم رسم الكائن فيها 0 تعني رسمها في نفس الشارت
إذا مثلا أردنا رسمها في نافذة الآر إس آي وكان رقم النافذه 1 فسوف يتم جعل window=1
الآن حسب كل نوع كان يتم رسمه يجب أن نحدد قيم الكائن فمثلا أنا أريد رسم مربع
فأنت تحتاج إلى أربع قيم تحددها حتى تستطيع رسم المربع وهذه هي وظيفة
time1 الزمن الأول
price1 السعر الأول
time2 الزمن الثاني
price2 السعر الثاني
أحيانا الكائن لا يحتاج إلا إلى قيمة الزمن الأول فقط مثل رسم خط رأسي
فسوف تحدد قيمة time1 فقط أما باقي القيم فسوف تصبح 0
أو تحدد السعر فقط مثل رسم خط أفقي
إلخ
الآن نعود إلى موضوعنا
- 09-12-2011, 10:54 PM #7
- 10-12-2011, 12:58 AM #8
ممتاااااااااز جدااااااااااا
متاابع بإهتماااااام
- 11-12-2011, 12:27 AM #9
الداله الأخرى المتعلقه بالداله ObjectCreate هي الداله ObjectSet
ووظيفتها تغيير القيمه الحاليه للكائن الذي تم تحديده
فمثلا أريد رسم مربع يحدد هاي ولو اليوم السابق سوف يكون بالشكل الآتي
كود PHP:ObjectCreate(name, OBJ_RECTANGLE, 0, iTime(Symbol(),1440,1),iHigh(Symbol(),1440,1),iTime(Symbol(),1440,0),iLow(Symbol(),1440,1));
مثل
كود PHP:ObjectCreate(name, OBJ_RECTANGLE, 0, 0,0,0,0);
كود PHP:ObjectSet(name,OBJPROP_TIME1,iTime(Symbol(),1440,1));
ObjectSet(name,OBJPROP_PRICE1,iHigh(Symbol(),1440,1));
ObjectSet(name,OBJPROP_TIME2,iTime(Symbol(),1440,0));
ObjectSet(name,OBJPROP_PRICE2,iLow(Symbol(),1440,1));
الآن نعود لموضوعنا
سوف أقوم بتعريف دالتين واحده لرسم مربع والأخرى لرسم الترند
كود PHP:void drawshap(string name,color LineColor,double Price1,double Price2,datetime Time1,datetime Time2)
{
if(ObjectFind(name) == -1)
{
ObjectCreate(name, OBJ_RECTANGLE, 0, Time1,Price1,Time2,Price2);
ObjectSet(name, OBJPROP_COLOR, LineColor);
ObjectSet(name, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(name, OBJPROP_WIDTH, 2);
}
else if(ObjectGet(name,OBJPROP_TIME1)!=Time1||ObjectGet(name,OBJPROP_PRICE1)!=Price1){
ObjectDelete(name);
}
}
void drawTrend(string name,color LineColor,double Price1,double Price2,datetime Time1,datetime Time2,bool b)
{
if(ObjectFind(name) == -1)
{
ObjectCreate(name, OBJ_TREND, 0, Time1,Price1,Time2,Price2);
ObjectSet(name, OBJPROP_COLOR, LineColor);
ObjectSet(name, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(name, OBJPROP_WIDTH, 2);
ObjectSet(name,OBJPROP_RAY,b);
}
else if(ObjectGet(name,OBJPROP_TIME1)!=Time1||ObjectGet(name,OBJPROP_PRICE1)!=Price1){
ObjectDelete(name);
}
}
هاي اليوم السابق وسيكون price1
لو اليوم السابق وسيكون price2
بداية اليوم السابق وسيكون time1
نهاية اليوم السابقه وسيكون time2
ورسم الترند سنحتاج إلى إفتتاح وإغلاق اليوم
كود PHP:double H,L,O,C;
datetime T1,T2;
for(int i=1;i<Days_History;i++){
H=iHigh(Symbol(),1440,i);
L=iLow(Symbol(),1440,i);
T1=iTime(Symbol(),1440,i);
T2=iTime(Symbol(),1440,i-1);
O=iOpen(Symbol(),1440,i);
C=iClose(Symbol(),1440,i);
if(DrawBox)drawshap("Box"+i,BoxColor,H,L,T1,T2);
if(DrawTrend)drawTrend("Trend"+i,TrendColor,O,C,T1,T2,Trend_Ray);
}
- 11-12-2011, 12:30 AM #10
- 11-12-2011, 04:45 AM #11
ربي يخليك يارب وفيت وزيادة كمااان والله
بس يالغالى فى ملحوظة
ارغب ان يكون الخط من افتتاح اليوم الى إغلاقة ان يكون ray
اى يمتد على نهاية الشارت هل ممكن؟
تحياااتى واكرر شكرى لك اخى مستر دولار العبقرى
- 11-12-2011, 07:18 AM #12
- 11-12-2011, 01:22 PM #13
- 11-12-2011, 05:14 PM #14
- 25-11-2013, 10:51 AM #15
رد:طلبى من الاخ العبقرى السفير alsafir
أستاذي الفاضل أسامة ، طبقت هذا الدرس في مؤشر وطبعا بالتصرف في المتغيرات واذا شاهدت صورة خط الترند ستجده رسم عدة خطوط ويختلف عن الصور بداخل الموضوع فضلا ارجو التصحيح في نفس المؤشر ، جزاك الله خير .