أي خبراء مبرمجين على استعداد لتصوير هذا وتغييره
- روتين التهيئة الشخصية الداخلية
- يحدد سمات المظهر الداخلي الداخلي والبارامترات الداخلية
- TODO: إضافة الحد الأدنى والحد الأقصى لقيمة المعلمات الرقمية واللون الافتراضي للقضيب
وظيفة Init ()
indoor: title (CUMULATIVE VOLUME INDEX)؛
داخلي: وصف (CUMULATIVE VOLUME INDEX)؛
داخلي: المصدر المطلوب (core.Bar)؛
داخلي: نوع (core.Oscillator) ؛
indoor.parameters: addGroup (محدد)؛
العملة المحلية = الدولار الأمريكي ، اليورو ، الجنيه الإسترليني ، الفرنك السويسري ، الين الياباني ، الدولار الأسترالي ، الدولار النيوزيلندي ، الدولار الكندي.
المحلي الأول
indoor.parameters: add String (Currency، Base Currency ،، Currency [1])؛
لأني = 1 ، 8 ، 1 القيام به
indoor.parameters: add String Alternative (Currency، Currency ،، Currency)؛
النهاية
indoor.parameters: addGroup (نمط)؛
indoor.parameters: إضافة اللون (لون ، لون CVI ، لون CVI ، core.rgb (255 ، 0 ، 0))؛
النهاية
- داخلي التهيئة سبيل المثال الروتينية
- إجراءات المعلمات داخل المباني وتدفق الإخراج المتولدة
- TODO: صقل حساب الفترة الأولية لكل من تيار الإخراج.
- TODO: حساب جميع الثوابت ، وإعطاء أمثلة عن جميع الفروع الناجحة وتحميل جميع المكتبات اللازمة
- كتلة المعلمات
المحلي الأول
أصل محلي = لا شيء ؛
- كتلة ستري
local Out = {}؛
العملة المحلية؛
التحميل المحلي = {}؛
القائمة المحلية = {}؛
عدد محلي
RawList المحلية ، RawCount ؛
sourceData المحلي = {}؛
pauto المحلي = (٪ a٪ a٪ a)(٪ a٪ a٪ a)؛
الظل المحلي
مضيف محلي
عداد محلي
الأسبوع المحلي
MA المحلي {=؛
-- نمط
الوظيفة التحضير (الاسم فقط)
الإستراتيجية = instance.parameters.Method؛
اللون = instance.parameters.color؛
العملة = instance.parameters.Currency؛
host = core.host؛
counter = host: execute (getTradingDayOffset)؛
weekoffset = host: execute (getTradingWeekOffset)؛
origin = instance.source؛
الأولي = الأصل: الأول ()؛
domain = profile: id (). . (المصدر: العنوان ().،.، العملة.
المثال: الاسم (اسم)؛
crncy1 المحلية ، crncy2 ،
RawList ، RawCount = getInstrumentList ()؛
المحلي الأول
FLAG المحلي = false؛
عدد = 0؛
ل I = 1 ، RawCount ، 1 القيام به
FLAG = خطأ
crncy1، crncy2 = string.match (RawList، pauto)؛
إذا (crncy1 == العملة) أو (crncy2 == العملة)
FLAG = صحيح
النهاية
إذا FLAG ثم
عدد = عدد 1 ؛
قائمة [عدد] = RawList
النهاية
النهاية
لأني = 1 ، العد ، 1 تفعل
SourceData = core.host:execute(getSyncHistory، List، source: barSize ()، source: isBid ()، 0، 200 I، 100 I)؛
loading = true
النهاية
إذا (ليس (nameOnly)) ثم
CVI = instance: addStream (CVI، core.Line، name، CVI، Color، first)؛
النهاية
النهاية
وظيفة getInstrumentList ()
القائمة المحلية = {}؛
العد المحلي = 0؛
الصف المحلي ، التعداد ؛
enum = core.host:findTable (offers): enumerator ()؛
الصف = التعداد: التالي ()؛
بينما الصف ~ = لا تفعل
count = count 1؛
list [count] = row.Instrument؛
الصف = التعداد: التالي ()؛
النهاية
قائمة العودة ، العد ؛
النهاية
تقدم محلي = 0؛
Declining المحلي = 0؛
- روتين حساب داخلي
- TODO: أضف رمزًا لقيم خرج الحساب
تحديث الوظيفة (الفترة ، الوضع)
إذا كانت الفترة lt؛ أولا أو لا مصدر: hasData (فترة) ثم
إرجاع؛
النهاية
تقدم = 0؛
انخفاض = 0؛
لأني = 1 ، العد ، 1 تفعل
إذا كان التحميل ثم
إرجاع؛
النهاية
النهاية
المحلي الأول
p المحلي
لأني = 1 ، العد ، 1 تفعل
p = التهيئة (I ، الفترة)
احسب (I، p، period)؛
النهاية
النهاية
حساب الدالة (I، p، period)
إن لم يكن ع ثم
إرجاع؛
النهاية
local Num = 0،0،0،0،0،0،0،0؛
ي المحلية
crncy1 المحلية ، crncy2 ،
crncy1، crncy2 = string.match (List، pauto)؛
إذا crncy1 == العملة ثم
if SourceData.close gt؛ SourceData.close [p-1] ثم
تقدم = تقدم SourceData.volume.
elseif SourceData.close lt؛ SourceData.close [p-1] ثم
Declining = Declining SourceData.volume؛
النهاية
elseif crncy2 == العملة ثم
if SourceData.close gt؛ SourceData.close [p-1] ثم
Declining = Declining SourceData.volume؛
elseif SourceData.close lt؛ SourceData.close [p-1] ثم
تقدم = تقدم SourceData.volume.
النهاية
النهاية
CVI [period] = CVI [period-1] (Advancing - Declining)؛
النهاية
- يتم استدعاء الدالة عند انتهاء عملية المتزامن
وظيفة AsyncOperationFinished (ملف تعريف الارتباط)
المحلي الأول
لأني = 1 ، العد ، 1 تفعل
إذا كان cookie == 100 I ثم
loading = true
elseif cookie == 200 I then
loading = false
المثال: updateFrom (0)؛
النهاية
النهاية
عودة core.ASYNC_REDRAW؛
النهاية
وظيفة التهيئة (I، period)
شمعة محلية
Candle = core.getcandle (source: barSize ()، source: date (period)، offset، weekoffset)؛
إذا كان التحميل أو SourceData: size () == 0 ثم
عودة كاذبة؛
النهاية
إذا كانت الفترة lt؛ المصدر: الأول () ثم
عودة كاذبة؛
النهاية
p المحلي: core.findDate (SourceData، Candle، false)؛
- لم يتم العثور على شمعة
إذا كانت p lt؛ 0 ثم
عودة كاذبة؛
آخر العودة ع ؛
النهاية
النهاية