সুপারিশ করুন যে এই পদ্ধতিটি নির্ভরযোগ্য নয়, যেহেতু এমটিটি সর্বোচ্চ পব সেট করার পরে পবলের আপডেট আপডেট বন্ধ করে দেয়। তাই, অনেকে! নির্ভরযোগ্য পদ্ধতি হল সময় পরীক্ষা করাOriginally Posted by ;
সুপারিশ করুন যে এই পদ্ধতিটি নির্ভরযোগ্য নয়, যেহেতু এমটিটি সর্বোচ্চ পব সেট করার পরে পবলের আপডেট আপডেট বন্ধ করে দেয়। তাই, অনেকে! নির্ভরযোগ্য পদ্ধতি হল সময় পরীক্ষা করাOriginally Posted by ;
হ্যাঁ, সম্মত, অবশ্যই বার পদ্ধতি ব্যবহার করবেন না SeriesInfoInteger ব্যবহার করার জন্য এবং এটি আপনার LASTBAR_DATE- এর জন্য ব্যবহার করার পদ্ধতি এবং আপনার ফাংশনগুলির সময়গুলি না হওয়া পর্যন্ত আবার জিজ্ঞাসা করুন অথবা আপনি একটি পরিষ্কার ফলাফল পান। এখানে একটি এমটিএফ এর একটি উদাহরণ হল নিউবর্ন ফাংশন ... সন্নিবেশিত কোড # ইনক্লুসিটি এলটি; অ্যারে \ অ্যারোঅবজ। ক্লাস নিউবর্স: পাবলিক CObject {ENUM_TIMEFRAMES m_timeframe; datetime m_last_bar_time; মানুষ: নতুন বার (ENUM_TIMEFRAMES টিএফ): m_timeframe (tf), m_last_bar_time (0) {} bool হল নিউবার () uint ms = GetTickCount (); ডেটটাইম কার্র; রিসেটলাস্ট এন্টার করুন (); curr = (datetime) SeriesInfoInteger (_Symbol, m_timeframe, SERIES_LASTBAR_DATE); যখন (_LastError! = ERR_NO_ERROR GetTickCount () - ms lt; 500); যদি (curr gt; 0 _LastError == ERR_NO_ERROR curr! = m_last_bar_time) bool res = true; যদি (m_last_bar_time == 0) res = false; m_last_bar_time = curr; ফিরে আসা; মিথ্যা প্রত্যাখ্যান; bool হল মেটিং (ENUM_TIMEFRAMES টিএফ) রিটার্ন m_timeframe == tf? সত্য মিথ্যা; }; বুলটি নিউ বার (কনস্ট ENUM_TIMEFRAMES ব্যবধান) স্ট্যাটিক সিরাওঅভিজ টিএফএস; (int i = tfs) (1); igt; = 0; i--) নিউবর্স * tf = dynamic_castlt; newbars * gt; (tfs.At (I)); যদি (tf.isMatching (ব্যবধান)) ফিরে tf.isNewBar (); tfs.Add (নতুন NewBars (ব্যবধান)); মিথ্যা প্রত্যাখ্যান;Originally Posted by ;
1 সংযুক্তি (গুলি)
এটি (আপডেট বন্ধ) বার () সর্বাধিক পববার সেটিং (এবং অতিক্রম) পৌঁছেছেন পরিস্থিতিতে পরিস্থিতিতে সর্বোচ্চ বার অতিক্রম করে নাOriginally Posted by ;
ধন্যবাদ, আপনি এই উদাহরণ প্রদান এখানে খুব ভাল, এখানে এবং আমার অন্যান্য থ্রেড উপর। আমি জানি আপনি এখানে কি করেছেন কিন্তু ভাষাবিদরা আমাকে ছাড়েন না কারণ আমি এখনও MQL4 এর OO অংশ শিখছি। আমি সম্পূর্ণরূপে আপনার কোড একটি স্ক্রিপ্ট প্রসঙ্গে কাজ করবে সম্পূর্ণরূপে বিশ্বাস করি না, তবে আমি সব যে শিক্ষিত না।Originally Posted by ;
ধন্যবাদ, আমি বিভিন্ন থ্রেডের মধ্যে প্রতিক্রিয়া জানাই যাতে আমি বিশ্বাস করি না কিন্তু এটি আমার জন্য কাজ করছিল তাই আমি কি কিংকর্তব্যবিমূঢ়Originally Posted by ;
সাড়া দেওয়ার জন্য আপনাকে ধন্যবাদ, তাই আমি এই বার পদ্ধতি ব্যবহার করার অধিকার নাকি? মনে হয় এটা সময় সিস্টেমটি সহজ এবং আমি কিছু জিনিস সহজ রাখতে পছন্দ করিOriginally Posted by ;
কোনও পদ্ধতি জটিল নয়: সন্নিবেশিত কোড স্ট্যাটিক datetime _prevTime = 0; ডেটটাইম _currTime = iTime (NULL, পছন্দসই সময় ফ্রেম, 0); bool _isNewBar = (_prevTime! = _currTime); যদি (_isNewBar) _prevTime = _currTime;Originally Posted by ;
ধন্যবাদ, আমি আমার স্ক্রিপ্টের মতো কিছু করেছি কিন্তু এটি কাজ করে না (প্রাথমিক নিবন্ধে পোস্ট করা হয়েছে) এমনকি যখন আমি RefreshRates যোগ করেছি ()। আমি আপনার কোডের সাথে আবার চেষ্টা করবো, রিস্টার্টের সাথে রিস্টার্ট করুন () লুপের ভিতরে এবং বাইরে যাতে স্ক্রিপ্ট তাজা তথ্য পায়।Originally Posted by ;
ঢোকানো কোড/- বিশ্বব্যাপী পরিবর্তনশীল ------------------------------------------ ------------------------ ডেটটাইম অ্যারাইটাইম # 91; # 93 ;, লাস্টটাইম; বাতিল করা অনটিক () যদি (নিউব্যার (PERIOD_CURRENT))/আপনার কোড বুল নিউবায়ার (int period) bool firstRun = false, newBar = false; ArraySetAsSeries (ArrayTime, সত্য); CopyTime (সাংকেতিক (), কাল, 0,2, ArrayTime); যদি (সর্বশেষ টাইম == 0) firstRun = সত্য; যদি (অ্যারাইটি টাইম # 91; 0 # 93; ডাইরেক্ট টাইম) যদি (firstRun == মিথ্যা) newBar = true; শেষ সময় = অ্যারেটাইম # 91; 0 # 93 ;; নতুন বীজ বপন;
উপরন্তু, র্যান্ডম সময় ফ্রেম জন্য উপযুক্ত এই কোড চেক করুন (প্রথম মূল্য উদ্ধৃতি ব্যবহার করে আবিষ্কৃত): সন্নিবেশিত কোড # প্রপার্টি কঠোর অকার্যকর ডানে-স্টার্ট () datetime সেকেন্ড = _ স্ট্রেজ * 60;/datetime t_last_recorded = 0 সেকেন্ডের মধ্যে যেকোনো পরিমাণ স্টেট;/প্রতিবাদ কর্মের জন্য: D যখন (! আইশপ্পড ()) রিফ্রেশ রিসেট (); datetime t = সময়সীমা ();/সর্বশেষ পরিচিত উদ্ধৃতি তারিখ সময় t_normalized = t/মুহূর্ত * মুহূর্ত; যখন (t_normalized gt; t_last_recorded)/নতুন বার printf (নতুন বার!); t_last_recorded = t_normalized; ঘুম (1);