कृपया आपको बताएं कि इतिहास में सबसे अधिक मूल्य और सबसे कम मूल्य के लिए सही तरीके से कैसे गणना की जाती है। धन्यवाद।

लेखक:आशा, बनाया गयाः 2022-10-17 00:13:14, अद्यतनः 2022-10-17 15:28:07

कृपया आपको बताएं कि इतिहास में सबसे अधिक कीमत और सबसे कम कीमत का सही तरीके से क्या लिखा गया है। धन्यवाद।

indicator("计算历史区间最高价、最低价", overlay=true)
//目的:想在开单时,找出开单前(输入历史长度)的最高价,或最低价,用于计算开单止损价。

varip ishistory_high_Price0 = array.new_float(0)                   //定义变量,初始化历史高价格为空的数组
varip ishistory_low_Price0 = array.new_float(0)                    //定义变量,初始化历史低价格为空的数组
var ishistory_length = input.int(15, minval=1, maxval=100, step=1) //定义变量,历史长度,输入为15,最小值1,最大值100,步长1
var ishistory_high_Price = na
var ishistory_low_Price  = na

if barstate.ishistory                                              //对历史K线执行计算(not barstate.ishistory当在实时abr时在执行)
    array.push(ishistory_high_Price0, nz(high[1], open))           //写入数组(变量ishistory_high_Price0的历史最高价元素,空值用开盘价)

    if array.size(ishistory_high_Price0) > ishistory_length        //当数组的长度大于变量长度的时候
        array.shift(ishistory_high_Price0)                         //删除数组(ishistory_high_Price0的第一个元素)
    [ishistory_high_Price0]

if barstate.ishistory                                              //对历史K线执行计算
    array.push(ishistory_low_Price0, nz(low[1], open))             //写入数组(变量ishistory_low_Price0的历史最低价元素,空值用开盘价)

    if array.size(ishistory_low_Price0) > ishistory_length         //当数组的长度大于变量长度的时候
        array.shift(ishistory_low_Price0)                          //删除数组(ishistory_low_Price0的第一个元素)
    [ishistory_low_Price0]

//需对历史高价格、历史低价格作出比较,并返回最大值(输入周期内的历史最高价、历史最低价)

//下面这个写法不正确!!!

ishistory_high_Price = array.max(ishistory_high_Price0, nz(high[1], open), ishistory_length)
ishistory_low_Price = array.min(ishistory_low_Price0, nz(low[1], open),ishistory_length)


plot(title = "数组ishistory_high_Price中的历史高价格:", ishistory_high_Price, color = color.blue)
plot(title = "数组ishistory_low_Price中的历史低价格:", ishistory_low_Price, color = color.red)

यद्यपि PINE भाषा के परिचयात्मक ट्यूटोरियल को सीखा गया है, लेकिन इतिहास के लिए K-string को फिर से नहीं लिखा जा सकता है! कृपया मुझे निर्देश दें कि चर को कैसे परिभाषित किया जाए, ऐतिहासिक उच्च मूल्य और ऐतिहासिक निम्न मूल्य के साथ तुलना करें, ऐतिहासिक उच्च मूल्य और ऐतिहासिक निम्न मूल्य के लिए पूछें, धन्यवाद।


अधिक

आशाकोई समस्या नहीं, चार्ट को प्रिंट करने के बाद इसे प्लगआउट में बदल दिया गया है और थीम ठीक दिखाई दे रही है।

आशाठीक है, धन्यवाद डैनी, यह कोड बदल गया हैः '' indicator (("इतिहास में उच्चतम मूल्य, निम्नतम मूल्य की गणना") // उद्देश्यः ऑर्डर खोलने के समय, ऑर्डर खोलने से पहले सबसे अधिक मूल्य (इंटर इतिहास की लंबाई) या सबसे कम मूल्य का पता लगाना, जिसे एकल स्टॉप-लॉस मूल्य की गणना के लिए उपयोग किया जाता है। var ishistory_length = input.int(15, title = "ishistory length", minval=1, maxval=100, step=1) // परिभाषित चर, इतिहास की लंबाई, इनपुट 15, न्यूनतम 1, अधिकतम 100, चरण 1 // var float highest = na // पिछले k पंक्तियों में दिए गए संख्याओं का उच्चतम मान। var float lowest = na // पिछले k पंक्तियों में दिए गए संख्याओं का निम्नतम मान। var float highestbars = na // पिछले k पंक्तियों में दिए गए संख्याओं के लिए उच्चतम मूल्य विचलन। var float lowestbars = na // पिछले k पंक्तियों में दिए गए संख्याओं के न्यूनतम मूल्य विचलन। highest := ta.highest ((high, ishistory_length) // इतिहास के लिए अधिकतम मान को फिर से परिभाषित करें जहां K लाइन की लंबाई 15 है। plot ((highest, title = "इतिहास के K लाइन में उच्चतम मूल्यः", color = color.blue, overlay=true) lowest := ta.lowest ((low, ishistory_length) // इतिहास के लिए K लाइन की लंबाई का न्यूनतम मान 15 को पुनः परिभाषित करें। plot ((lowest, title = "इतिहास में K लाइन में कम कीमतः", color = color.red, overlay=true) highest := ta.highest ((high[1], ishistory_length) // इतिहास के लिए अधिकतम मान को पुनः परिभाषित करें जहाँ K लाइन की लंबाई 15 है। plot ((highest, title = "इतिहास के K लाइन में उच्चतम मूल्यः", color = color.blue, overlay=true) lowest := ta.lowest ((low[1], ishistory_length) // इतिहास के लिए K लाइन की लंबाई का न्यूनतम मान 15 को पुनः परिभाषित करें。 plot ((lowest, title = "इतिहास में K लाइन में कम कीमतः", color = color.red, overlay=true) नीचे दिए गए विस्थापन मुद्रण में कुछ समस्याएं दिखाई दे रही हैं और मुझे नहीं पता कि उन्हें कैसे बदला जाए। highestbars := ta.highestbars ((high, ishistory_length) // इतिहास K लाइन की लंबाई के लिए अधिकतम मूल्य विचलन को 15 के रूप में फिर से असाइन करें। plot ((highestbars, title = "इतिहास में K लाइन में उच्च मूल्य विचलनः", color = color.orange, overlay=true) lowestbars := ta.lowestbars ((low, ishistory_length) // पिछले k पंक्तियों में दिए गए संख्याओं के न्यूनतम मूल्य विचलन। plot ((lowestbars, title = "इतिहास में K लाइन में निम्न मूल्य विचलनः", color = color.white, overlay=true) '' तीन छोटे सवाल हैं, कृपया सीखेंः 1, जब भी आप पाइन अंतर्निहित फ़ंक्शन को कॉल करते हैं, तो आप इतिहास के उच्चतम या निम्नतम मानों के लिए पूछते हैं, जैसे कि कोड में उच्च, और उच्च [1], वे एक ही परिणाम देते हैं, है ना? 2. अगर मुझे बाद में इन मानों को कॉल करने की आवश्यकता है, तो मैं सीधे उच्चतम या निम्नतम टैग का उपयोग कर सकता हूं। 3, ऊपर दिए गए विस्थापन मुद्रण में कुछ समस्याएं हैं और मुझे नहीं पता कि उन्हें कैसे बदला जाए।

छोटे सपनेएक विशिष्ट सीमा के भीतर डेटा श्रृंखला के अधिकतम और न्यूनतम मानों के लिए सीधे उपयोग करने के लिए अंतर्निहित फ़ंक्शनः `` ta.highest ((source, length)) ta.lowest (स्रोत, लंबाई) `` उदाहरण के लिए, वर्तमान में 10 के लाइन बार के भीतर अधिकतम समापन मूल्य का अनुरोध करेंः `` highest10 = ta.highest ((close, 10) ``

छोटे सपनेठीक है

छोटे सपने1,high, और high[1] निश्चित रूप से अलग हैं, [] एक ऐतिहासिक ऑपरेशन संदर्भ है, जो पिछले BAR पर स्नैपशॉट डेटा का संदर्भ है। 2, आप एक मान की गणना कर सकते हैं और इसे चर के साथ रिकॉर्ड कर सकते हैं । 3। विशिष्ट समस्या का वर्णन करें, परीक्षण चलाया, कोई समस्या नहीं है।