趋势直线指标

趋势直线副图和主图指标,旨在通过技术分析工具帮助交易者识别市场趋势和潜在的买卖点。

 

 

副图指标:基于KDJ指标的交易策略

1. RSV值计算:

   - RSV(未成熟随机值)反映了当前收盘价在过去一段时间内的相对位置。通过计算当前收盘价与过去9周期最低价的差值,再除以过去9周期最高价与最低价的差值,得到RSV值。

 

2. K值和D值的计算:

   - K值是基于RSV值的简单移动平均值(SMA),计算周期为3。

   - D值是基于K值的简单移动平均值,计算周期同样为3。

 

3. J值的计算:

   - J值是K值和D值的线性组合,公式为:J = 3 * K - 2 * D。

 

4. 图表绘制:

   - 在图表上绘制K值(白色)、D值(黄色)和J值(紫色)。

   - 注释掉的代码原本用于绘制80和20的水平线,表示超买和超卖水平。

 

5. 趋势线创建:

   - 创建两条新趋势线,分别表示超买(80)和超卖(20)水平。

   - 设置趋势线的宽度、样式和颜色,以便在图表上清晰显示。

 

主图指标:阻力线和支撑线的绘制

1. 阻力线绘制:

   - 当当前最高价是过去20周期的最高价时,删除旧的阻力线并绘制新的阻力线。

   - 使用`tl_new_dt`函数基于时间和价格创建新的阻力线,线条向右延伸,颜色为红色,样式为5。

 

2. 支撑线绘制:

   - 当当前最低价是过去20周期的最低价时,删除旧的支撑线并绘制新的支撑线。

   - 使用`tl_new_dt`函数基于时间和价格创建新的支撑线,线条向右延伸,颜色为绿色,样式为4。

 

交易逻辑思路和特点

1. 副图指标的交易逻辑:

   - 通过KDJ指标(随机指标)来判断市场的超买和超卖状态。K值和D值的交叉点可以作为买入和卖出的信号。

   - J值是对K值和D值的进一步加工,提供了更多的交易信号。

   - 超买和超卖水平线(80和20)可以帮助交易者识别市场的极端情况,避免在高风险区域进行交易。

 

2. 主图指标的交易逻辑:

   - 阻力线和支撑线的绘制帮助交易者识别价格的关键水平。当价格接近这些关键水平时,可能会遇到阻力或支撑。

   - 新的方法基于时间和价格创建线条,确保线条的准确性和实时性。

   - 阻力线和支撑线的颜色和样式设置使得图表更加直观,便于交易者快速识别。

 

3. 综合分析:

   - 副图指标和主图指标结合使用,可以提供更全面的市场分析。副图指标侧重于短期价格动量的分析,而主图指标则提供了中长期价格趋势的支持和阻力信息。

   - 这种综合分析方法有助于交易者在不同时间框架内做出更准确的交易决策。

 

趋势直线指标通过副图和主图的结合,提供了一个多层次的市场分析工具。

副图指标基于KDJ指标,帮助交易者识别短期的超买和超卖状态,而主图指标则通过绘制阻力线和支撑线,提供了中长期价格趋势的关键信息。

这种综合分析方法有助于交易者在不同时间框架内做出更准确的交易决策,提高交易的成功率和风险管理能力。

 

 

以下是副图指标代码的逐行注释:

// 输入参数定义

Input: len(9), m1(3), m2(3), overbuy(80), oversell(20);

 

// 变量声明,用于存储RSV、K值、D值、J值

var: rsv(50), kvalue(50), dvalue(50), jvalue(50);

 

// 计算当前收盘价与过去len周期最低价的差值

value1 = Close - Lowest(low, len);

 

// 计算过去len周期最高价与最低价的差值

value2 = Highest(high, len) - Lowest(low, len);

 

// 如果value2不为0,则计算RSV值,避免除以零的错误

if value2 <> 0 then begin

    // 计算RSV值,表示当前价格相对于过去len周期价格范围的位置

    rsv = 100 * value1 / value2;

    

    // 使用简单移动平均计算K值,基于RSV值

    kvalue = SMA(rsv, m1, 1);

    

    // 使用简单移动平均计算D值,基于K值

    dvalue = SMA(kvalue, m2, 1);

end;

 

// 计算J值,它是K值和D值的一个组合

jvalue = 3 * kvalue - 2 * dvalue;

 

// 在图表上绘制K值,颜色为白色

plot1(kvalue, "K", white);

 

// 在图表上绘制D值,颜色为黄色

plot2(dvalue, "D", yellow);

 

// 注释掉的代码,原本用于绘制80和20的水平线,颜色分别为深灰色

// plot3(overbuy, "80", darkgray);

// plot4(oversell, "20", darkgray);

 

// 在图表上绘制J值,颜色为紫色

Plot5(jvalue, "J", rgb(255, 0, 255));

 

// 创建两条新趋势线,用于表示超买和超卖水平

value1 = tl_new_self_bn(1, 20, currentbar, 20); // 创建超卖水平线

value2 = tl_new_self_bn(1, 80, currentbar, 80); // 创建超买水平线

 

// 设置趋势线的宽度

tl_setsize(value1, 1);

tl_setsize(value2, 1);

 

// 设置趋势线的样式

tl_setstyle(value1, 4); // 样式4

tl_setstyle(value2, 3); // 样式3

 

// 设置趋势线的颜色

tl_setcolor(value1, lightgray); // 超卖水平线颜色为浅灰色

tl_setcolor(value2, Magenta);   // 超买水平线颜色为洋红色

 

副图指标实现了一个基于KDJ指标(随机指标)的交易策略,其中K值和D值是通过RSV值计算得出的,而J值是K值和D值的线性组合。代码还包括在图表上绘制K值、D值和J值的命令,以及创建和设置表示超买和超卖水平趋势线的命令。

 

以下是主图指标代码的逐行注释:

// 绘制阻力线

if high = Highest(high, 20) then begin  // 如果当前最高价是过去20周期的最高价,则表示新的最高点

    tl_delete(value1); // 删除旧的阻力线

    

    // 使用旧的方法创建新的阻力线,注释掉了

    // value1 = tl_new(date, time, high, date, time, high); // 绘制新的阻力线

    

    // 使用新的方法创建新的阻力线,基于时间和价格

    value1 = tl_new_dt(datetime[20], high, datetime, high);

    

    tl_setextright(value1, true); // 设置线条向右延伸

    

    tl_setcolor(value1, red); // 设置线条颜色为红色

    

    tl_setsize(value1, 1); // 设置线条宽度为1

    

    tl_setstyle(value1, 5); // 设置线条样式为5

end;

 

// 绘制支撑线

if Low = Lowest(low, 20) then begin // 如果当前最低价是过去20周期的最低价,则表示新的最低点

    tl_delete(value2); // 删除旧的支撑线

    

    // 使用旧的方法创建新的支撑线,注释掉了

    // value2 = tl_new(date, time, low, date, time, low); // 绘制新的支撑线

    

    // 使用新的方法创建新的支撑线,基于时间和价格

    value2 = tl_new_dt(datetime[20], low, datetime, low);

    

    tl_setextright(value2, true); // 设置线条向右延伸

    

    tl_setcolor(value2, green); // 设置线条颜色为绿色

    

    tl_setsize(value2, 1); // 设置线条宽度为1

    

    tl_setstyle(value2, 4); // 设置线条样式为4

end;

 

主图指标用于在图表上绘制阻力线和支撑线。当价格达到过去20个周期内的最高价或最低价时,它会删除旧的线并绘制一条新的线。新的线会向右延伸,并且有特定的颜色和样式。代码中使用的是`tl_new_dt`函数来创建线条,这是基于时间和价格的。线条的宽度被设置为1,阻力线颜色为红色,支撑线颜色为绿色,并且有不同的样式。

 

 

趋势直线指标(副图)代码:

Input:len(9),m1(3),m2(3),overbuy(80),oversell(20);

 

var:rsv(50),kvalue(50),dvalue(50),jvalue(50);

 

value1 = Close - Lowest(low,len);

 

value2 = Highest(high,len) - Lowest(low,len);

 

if value2 <> 0 then begin

 

rsv = 100*value1/value2;

 

kvalue = SMA(rsv,m1,1);

dvalue = SMA(kvalue,m2,1);

 

end;

 

jvalue = 3*kvalue - 2*dvalue;

 

plot1(kvalue,"K",white);

 

plot2(dvalue,"D",yellow);

 

//plot3(overbuy,"80",darkgray);

 

//plot4(oversell,"20",darkgray);

 

Plot5(jvalue,"J",rgb(255,0,255));

 

value1 = tl_new_self_bn(1,20,currentbar,20);

value2 = tl_new_self_bn(1,80,currentbar,80);

tl_setsize(value1,1);

tl_setsize(value2,1);

tl_setstyle(value1,4);

tl_setstyle(value2,3);

tl_setcolor(value1,lightgray);

tl_setcolor(value2,Magenta);

 

 

画趟势直线指标(主图)代码

if high = Highest(high,20) then begin  

 

tl_delete(value1);

 

//value1 = tl_new(date,time,high,date,time,high);

 

value1 = tl_new_dt(datetime[20],high,datetime,high);

 

tl_setextright(value1,true);

 

tl_setcolor(value1,red);

 

tl_setsize(value1,1);

 

tl_setstyle(value1,5);

 

end;

 

if Low =Lowest(low,20) then begin

tl_delete(value2);

 

//value2 = tl_new(date,time,low,date,time,low);

 

value2 = tl_new_dt(datetime[20],low,datetime,low);

 

tl_setextright(value2,true);

 

tl_setcolor(value2,green);

 

tl_setsize(value2,1);

 

tl_setstyle(value2,4);

 

end;

策略思维导图:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/bicheng/83149.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FEMFAT许可分析的数据可视化方法

随着企业对FEMFAT软件使用的增加&#xff0c;如何有效地管理和分析许可数据成为了关键。数据可视化作为一种强大的工具&#xff0c;能够帮助企业直观地理解FEMFAT许可的使用情况&#xff0c;从而做出更明智的决策。本文将介绍FEMFAT许可分析的数据可视化方法&#xff0c;并探讨…

AMBER软件介绍

AMBER软件介绍 AMBER&#xff08;Assisted Model Building with Energy Refinement&#xff09;是一套广泛应用于分子动力学&#xff08;MD&#xff09;模拟和生物分子结构分析的软件工具集&#xff0c;尤其在蛋白质、核酸、多糖等生物大分子的模拟中表现突出。以下是关于AMBE…

GoogLeNet网络模型

GoogLeNet网络模型 诞生背景 在2014年的ImageNet图像识别挑战赛中&#xff0c;一个GoogLeNet的网络架构大放异彩&#xff0c;与VGG不同的是&#xff0c;VGG用的是3*3的卷积&#xff0c;而GoogLeNet从1*1到7*7的卷积核都用&#xff0c;也就是使用不同大小的卷积核组合。 网络…

Free2AI:企业智能化转型的加速器

随着数字化与智能化的深度交融&#xff0c;企业的竞争舞台已悄然转变为数据处理能力和智能服务水平的竞技场。Free2AI以其三大核心功能——智能数据采集、多格式文档解析、智能FAQ构建&#xff0c;为企业铺设了一条从数据洞察到智能服务的全链路升级之路&#xff0c;成为推动企…

Vue 核心技术与实战day07

1. vuex概述 2. 构建 vuex [多组件数据共享] 环境 <template><div id"app"><h1>根组件- {{ title }}- {{ count }}</h1><input :value"count" input"handleInput" type"text"><Son1></Son1>…

【原神 × 插入排序】刷圣遗物也讲算法:圣遗物评分系统背后的排序逻辑你真的懂吗?

📘 改编自:王争《数据结构与算法之美》 🎮 游戏演绎:米哈游《原神》 🧠 核心关键词:插入排序、排序算法、评分系统、属性评价、强化圣遗物、冒泡排序对比 🧭 引言:原神刷本=刷排序? 玩《原神》的玩家每天日常是啥?体力用来刷圣遗物、精通头、暴击头、攻充沙………

quasar electron mode如何打包无边框桌面应用程序

预览 开源项目Tokei Kun 一款简洁的周年纪念app&#xff0c;现已发布APK&#xff08;安卓&#xff09;和 EXE&#xff08;Windows&#xff09; 项目仓库地址&#xff1a;Github Repo 应用下载链接&#xff1a;Github Releases Preparation for Electron quasar dev -m elect…

微信小程序真机调试时如何实现与本地开发环境服务器交互

最近在开发微信小程序项目,真机调试时需要在手机上运行小程序,为了实现本地开发服务器与手机小程序的交互,需要以下步骤 1.将手机连到和本地一样的局域网 2.Visual Studio中将IIS Express服务器的localhost端口地址修改为本机的IP自定义的端口: 1&#xff09;找到web api项目…

Scratch节日 | 拯救屈原 | 端午节

端午节快乐&#xff01; 这款特别为端午节打造的Scratch游戏 《拯救屈原》&#xff0c;将带你走进古代中国&#xff0c;感受历史与文化的魅力&#xff01; &#x1f3ee; 游戏介绍 扮演勇敢的探险者&#xff0c;穿越时空回到古代&#xff0c;解锁谜题&#xff0c;完成任务&…

PHP下实现RSA的加密,解密,加签和验签

前言&#xff1a; RSA下加密&#xff0c;解密&#xff0c;加签和验签是四种不同的操作&#xff0c;有时候会搞错&#xff0c;记录一下。 1.公钥加密&#xff0c;私钥解密 发送方通过公钥将原数据加密成一个sign参数&#xff0c;相当于就是信息的载体&#xff0c;接收方能通过si…

Win10秘笈:两种方式修改网卡物理地址(MAC)

Win10秘笈&#xff1a;两种方式修改网卡物理地址&#xff08;MAC&#xff09; 在修改之前&#xff0c;可以先确定一下要修改的网卡MAC地址&#xff0c;查询方法有很多种&#xff0c;比如&#xff1a; 1、在设置→网络和Internet→WLAN/以太网&#xff0c;如下图所示。 2、在控…

C++中IO文件输入输出知识详解和注意事项

以下内容将从文件流类体系、打开模式、文本与二进制 I/O、随机访问、错误处理、性能优化等方面&#xff0c;详解 C 中文件输入输出的使用要点&#xff0c;并配以示例。 一、文件流类体系 C 标准库提供三种文件流类型&#xff0c;均定义在 <fstream> 中&#xff1a; std…

Unity3D仿星露谷物语开发56之保存角色位置到文件

1、目标 游戏中通过Save Game保存角色位置&#xff0c;当重启游戏后&#xff0c;通过Load Game可以恢复角色的位置。 2、Player对象操作 &#xff08;1&#xff09;组件添加 给Hierarchy下的Player组件添加Generate GUID组件。 &#xff08;2&#xff09;修改SceneSave.cs脚…

TKernel模块--杂项

TKernel模块–杂项 1.DEFINE_HARRAY1 #define DEFINE_HARRAY1(HClassName, _Array1Type_) \ class HClassName : public _Array1Type_, public Standard_Transient { \public: …

c++ typeid运算符

typeid运算符能获取类型信息。获取到的是type_info对象。type_info类型如下&#xff1a; 可以看到&#xff0c;这个类删除了拷贝构造函数以及等号操作符。有一些成员函数&#xff1a;hash_code、before、name、raw_name, 还重载了和!运算符。 测试&#xff1a; void testTyp…

第304个Vulnhub靶场演练攻略:digital world.local:FALL

digital world.local&#xff1a;FALL Vulnhub 演练 FALL (digitalworld.local: FALL) 是 Donavan 为 Vulnhub 打造的一款中型机器。这款实验室非常适合经验丰富的 CTF 玩家&#xff0c;他们希望在这类环境中检验自己的技能。那么&#xff0c;让我们开始吧&#xff0c;看看如何…

【数据库】数据库恢复技术

数据库恢复技术 实现恢复的核心是使用冗余&#xff0c;也就是根据冗余数据重建不正确数据。 事务 事务是一个数据库操作序列&#xff0c;是一个不可分割的工作单位&#xff0c;是恢复和并发的基本单位。 在关系数据库中&#xff0c;一个事务是一条或多条SQL语句&#xff0c…

switch-case判断

switch-case判断 #include <stdio.h> int main() {int type;printf("请输入你的选择&#xff1a;\n");scanf("%d",&type);getchar();switch (type){case 1:printf("你好&#xff01;");break;case 2:printf("早上好&#xff01;…

从监控到告警:Prometheus+Grafana+Alertmanager+告警通知服务全链路落地实践

文章目录 一、引言1.1 监控告警的必要性1.2 监控告警的基本原理1.2.1 指标采集与存储1.2.2 告警规则与触发机制1.2.3 多渠道通知与闭环 二、技术选型与架构设计2.1 为什么选择 Prometheus 及其生态2.1.1 Prometheus 优势分析2.1.2 Grafana 可视化能力2.1.3 Alertmanager 灵活告…

STM32 UART通信实战指南:从原理到项目落地

STM32串口通信实战指南&#xff1a;从零开始手把手教你 前言&#xff1a;为什么串口这么重要&#xff1f; 在嵌入式开发中&#xff0c;串口就像设备的"嘴巴"和"耳朵"。无论是给单片机下达指令、读取传感器数据&#xff0c;还是让两个模块"对话"…