النتائج 1 إلى 3 من 3
- 09-07-2024, 03:18 AM #1
نقل البيانات من منصة mt4 الى برنامج الاكسل
السلام عليكم الاخوه الاعضاء ارجو توضيح طريقة ربط منصة mt4 مع برنامج الاكسل بيحث ينقل البيانات التاليه date - tim - open- high - cloes على شكل صفوف على ايى تايم فريم مثلا فريم ( 5 ) دقائق بحيث يكون النقل على شكل صفوف تنزل في ورقة الاكسل حال انتهى المده مباشره كما موضح هنا
03/07/2024 12:05:00 ص 1.2674 1.2684 1.2674 1.2683
03/07/2024 12:10:00 ص 1.2683 1.2683 1.2679 1.2681
03/07/2024 12:15:00 ص 1.2681 1.2683 1.2679 1.2682
03/07/2024 12:20:00 ص 1.2682 1.2682 1.2677 1.2678
03/07/2024 12:25:00 ص 1.2678 1.2685 1.2677 1.2683
03/07/2024 12:30:00 ص 1.2683 1.2683 1.2679 1.2680
03/07/2024 12:35:00 ص 1.2679 1.2683 1.2679 1.2682
03/07/2024 12:40:00 ص 1.2682 1.2683 1.2680 1.2682
- 10-07-2024, 07:56 PM #2
يمكنك كتابة البيانات إلى ملف CSV باستخدام دوال مثل `FileOpen`, `FileWrite`, و `FileClose` لكتابة البيانات إلى ملف CSV.
إليك كود تمبلت يقوم بهذه المهمة ، يمكنك تعديله و ضبطه ليوافق طلبك …
كود PHP:// تعريف اسم الملف
#define FILE_NAME "MarketData.csv"
// الدالة الخاصة بكتابة البيانات إلى الملف
void WriteDataToCSV()
{
int fileHandle;
// فتح الملف في وضع الكتابة أو الإنشاء
fileHandle = FileOpen(FILE_NAME, FILE_CSV|FILE_WRITE, "\t");
if (fileHandle != INVALID_HANDLE)
{
// كتابة رأس العمود
FileWrite(fileHandle, "Time", "Open", "High", "Low", "Close");
// عدد الشموع التي نريد كتابتها
int barsToWrite = 10; // يمكنك تعديل هذا الرقم حسب احتياجاتك
for (int i = barsToWrite - 1; i >= 0; i--)
{
datetime time = Time[i];
double open = Open[i];
double high = High[i];
double low = Low[i];
double close = Close[i];
// تحويل الوقت إلى نص بصيغة مناسبة
string timeStr = TimeToString(time, TIME_DATE|TIME_MINUTES);
// كتابة البيانات إلى الملف
FileWrite(fileHandle, timeStr, open, high, low, close);
}
// إغلاق الملف
FileClose(fileHandle);
Print("Data successfully written to ", FILE_NAME);
}
else
{
Print("Failed to open file ", FILE_NAME);
}
}
// الدالة الرئيسية
void OnStart()
{
WriteDataToCSV();
}
```
**شرح الكود:**
1. **فتح الملف**: يتم فتح الملف `MarketData.csv` في وضع الكتابة باستخدام `FileOpen`. إذا كان الملف موجودًا، يتم الكتابة عليه؛ وإذا لم يكن موجودًا، يتم إنشاؤه.
2. **كتابة رأس العمود**: يتم كتابة أسماء الأعمدة في الصف الأول من الملف.
3. **كتابة البيانات**: يتم تكرار الكتابة عبر عدد محدد من الشموع (في هذا المثال، 10 شموع)، ويتم كتابة وقت الشمعة والبيانات (الافتتاح، الأعلى، الأدنى، الإغلاق) في الملف.
4. **إغلاق الملف**: بعد الانتهاء من الكتابة، يتم إغلاق الملف باستخدام `FileClose`.
يمكنك تعديل هذا الكود ليناسب احتياجاتك مثل عدد الشموع المراد كتابتها أو مسار الملف. بعد إنشاء الملف، يمكنك فتحه باستخدام Excel وستجد البيانات مرتبة في صفوف وأعمدة …
- 13-07-2024, 10:00 PM #3
شكرا على الاجابه ولدى استفسار بخصوص هذا الكود هل يتم نقل البيانات بشكل مباشر وتنزيل حال انتهى الوقت المطلوب