零基础学Pine Script——基于TradingView平台的量化分析(全彩)
书籍作者:阎英姿 |
ISBN:9787121465383 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:8985 |
创建日期:2024-05-12 |
发布日期:2024-05-12 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
这是第一本介绍Pine Script语言的中文图书。Pine Script是TradingView平台上特有的一种轻量级脚本语言,它简洁高效、易学易用,可用于编写/定制指标和策略,并进行策略的回测。按照内容划分,本书可以归类于金融投资领域的量化分析图书范畴。全书内容分为四个部分,包括基础篇、函数篇、进阶篇和应用篇。本书从初学者角度出发,按照由浅入深、从基础到应用的顺序递进,先介绍Pine Script语言基础,再着重笔墨讲解该语言的特色、重点和使用技巧,最后给出精选的20多款颇具应用价值的实例。书中所有知识点都结合具体例子进行讲述,所涉及的脚本代码均在关键之处给出了详细的注释,使读者可以轻松领会Pine Script语言的精髓,并快速掌握应用技能。
作者简介
阎英姿,985院校计算机专业硕士毕业,曾先后供职于中科院计算所、中国银行软件中心和全球前五百强外企的金融服务部门,拥有多年技术与咨询等行业经验。现担任一家FinTech公司的负责人,可通过微信公众号“鹦鹉嘉言”联络作者。
目录
一、基础篇
第1章 初识TradingView与
Pine Script 2
1.1 初识TradingView 2
1.1.1 TradingView简介 2
1.1.2 如何访问TradingView 2
1.1.3 TradingView图表界面的
布局与功能 4
1.2 初识Pine Script 7
1.2.1 Pine Script简介 7
1.2.2 Pine Script界面概览与功能 8
第2章 快速上手Pine Script 9
2.1 第一个程序 9
2.1.1 第一个indicator程序 9
2.1.2 第一个strategy程序 10
2.2 Pine Script的脚本结构 12
2.2.1 脚本结构简介 12
2.2.2 由Pine Editor自动生成的
基础脚本框架 12
2.2.3 脚本头部 14
2.2.4 主调函数indicator/strategy/library的声明语句 15
2.2.5 脚本主体 15
2.3 执行模式 16
2.3.1 执行模式简介 16
2.3.2 由时间触发的脚本执行模式 16
2.3.3 由事件触发的脚本执行模式 17
2.3.4 函数indicator与函数strategy在
脚本执行模式中的差异 17
2.4 小结 17
第3章 Pine Script语法基础之
书写格式 18
3.1 注释规则 18
3.2 代码缩进 18
3.3 多行续写 20
3.4 一行写多条语句 21
3.5 小结 22
第4章 标识符、保留字、变量与常量 23
4.1 标识符的命名规则 23
4.2 保留字 24
4.3 变量 24
4.3.1 变量的定义 24
4.3.2 内置变量 25
4.4 常量 25
4.4.1 常量的定义 25
4.4.2 内置常量 25
4.5 小结 26
第5章 数据类型 28
5.1 基础数据类型 28
5.1.1 整型(int) 28
5.1.2 浮点型(float) 28
5.1.3 布尔型(bool) 28
5.1.4 字符串型(string) 29
5.1.5 颜色类型(color) 29
5.2 特殊数据类型 31
5.2.1 line、label、box和table数据
类型 31
5.2.2 plot和hline数据类型 31
5.3 数据形式 32
5.3.1 常数(literal) 32
5.3.2 常量(const) 32
5.3.3 输入型(input) 33
5.3.4 商品代码(symbol) 33
5.3.5 时间序列(series) 33
5.4 数据结构 35
5.4.1 特殊的内置变量na 35
5.4.2 特殊类型void 37
5.4.3 多元组(Tuples) 37
5.4.4 数组(Array) 38
5.4.5 用户自定义类型
(User-Defined Types) 39
5.4.6 矩阵(Matrix) 40
5.5 数据类型的转换 41
5.5.1 数据类型的自动转换 41
5.5.2 使用函数进行数据类型转换 42
5.6 小结 43
第6章 运算符、表达式和语句 44
6.1 运算符/操作符 44
6.1.1 数学运算符 44
6.1.2 比较运算符 45
6.1.3 逻辑运算符 45
6.1.4 条件运算符 46
6.1.5 历史行情数据引用操作符 46
6.1.6 赋值运算符 47
6.1.7 再赋值运算符 48
6.1.8 运算符的优先级 48
6.2 表达式 49
6.3 语句 50
6.4 小结 50
第7章 变量声明与变量再赋值 51
7.1 变量声明 51
7.1.1 变量声明语句的格式 51
7.1.2 显式类型声明与隐式类型
声明 52
7.1.3 使用特殊值na进行变量
初始化 53
7.2 变量再赋值 53
7.3 变量声明模式 55
7.3.1 未指定变量声明模式 55
7.3.2 var模式 55
7.3.3 varip模式 57
7.4 小结 58
第8章 条件结构 60
8.1 if语句 60
8.1.1 if语句:局部程序块无返回值,
但是有副作用 60
8.1.2 if语句:局部程序块有
返回值 61
8.2 switch语句 62
8.2.1 switch语句:右侧有表达式 62
8.2.2 switch语句:右侧无表达式 63
8.3 小结 64
第9章 循环结构 65
9.1 for语句 65
9.2 for…in语句 67
9.3 while语句 68
9.4 小结 70
二、函数篇
第10章 函数概述 72
10.1 函数简介 72
10.2 函数的分类 72
10.2.1 函数按照调用关系分类 72
10.2.2 函数按照在系统内是否预先
定义分类 73
第11章 指标函数indicator 75
11.1 函数indicator声明语句格式与参数 75
11.2 函数indicator的参数解析与示例 76
11.2.1 参数title和参数shorttitle 76
11.2.2 参数overlay 77
11.2.3 参数format 78
11.2.4 参数precision 80
11.2.5 参数scale 81
11.2.6 参数timeframe 82
11.2.7 参数timeframe_gaps 83
11.2.8 参数explicit_plot_zorder 84
11.2.9 参数max_lines_count 86
11.2.10 参数max_labels_count 87
11.2.11 参数max_boxes_count 89
11.2.12 参数max_bars_back 91
11.3 小结 91
第12章 绘图函数 93
12.1 绘图函数简介 93
12.2 函数plot 93
12.3 plot系列的其他函数 112
12.4 非plot系列的绘图函数 116
第13章 输入函数input/input.*系列 124
13.1 输入函数input/input.*系列简介 124
13.2 输入函数input/input.*系列的示例 126
13.2.1 函数input的示例 126
13.2.2 函数input.int的示例 127
13.2.3 函数input.float的示例 129
13.2.4 函数input.bool的示例 129
13.2.5 函数input.color的示例 130
13.2.6 函数input.price的示例 132
13.2.7 函数input.session的示例 132
13.2.8 函数input.source的示例 134
13.2.9 函数input.string的示例 134
13.2.10 函数input.symbol的示例 135
13.2.11 函数input.text_area的
示例 137
13.2.12 函数input.time的示例 137
13.2.13 函数input.timeframe的
示例 138
第14章 策略函数strategy及
strategy.*系列 140
14.1 交易策略、回测和前测 140
14.2 策略函数strategy的用户界面介绍 141
14.3 策略函数strategy 144
14.3.1 函数strategy的参数分类 144
14.3.2 strategy的函数声明语句格式与
参数 145
14.3.3 可以运用于回测与前测的参数的
详细解析与示例 147
14.3.4 专用于前测的三个参数的
详细解析与示例 171
14.3.5 按时间段进行回测与前测的
示例 179
14.4 其他strategy.*系列函数 183
14.4.1 strategy.*系列函数分类 183
14.4.2 订单处理 186
14.4.3 strategy.risk.*系列函数 196
14.5 小结 209
第15章 库函数library 210
15.1 库函数library简介 210
15.2 库函数library的定义/创建 210
15.3 发布库函数library 213
15.4 如何导入/使用库函数library 214
第16章 其他内置函数 217
第17章 用户自定义函数 220
17.1 用户自定义函数声明的语句格式与
举例 220
17.1.1 用户自定义函数声明的单行语句
格式与示例 220
17.1.2 用户自定义函数声明的多行语句
格式与示例 221
17.2 小结 224
三、进阶篇
第18章 图表的配色设计 226
18.1 颜色的4种表示方法 226
18.2 color相关函数 230
18.2.1 返回值为color类型的
函数 230
18.2.2 用于为图形、图表、背景或
指定区域配色的函数 231
18.2.3 color相关函数的详细解析与
示例 232
18.3 Z-index:图形/图表的堆叠顺序 239
18.4 颜色渲染与颜色渐变 241
18.5 小结 246
第19章 提醒功能及alert系列函数 247
19.1 划分提醒类型 247
19.2 将提醒信息发送到终端或其他渠道的
设置 249
19.3 在用户界面创建提醒的方法 252
19.4 使用alert系列函数定制提醒的触发
条件和提醒信息 256
19.4.1 函数alertcondition 256
19.4.2 函数alert 257
19.5 使用函数strategy.*的参数alert_message
定制提醒信息 263
19.6 小结 265
第20章 数组 266
第21章 调试 272
21.1 调试简介 272
21.2 使用输出函数将变量的值或提示信息
输出到屏幕 273
21.3 使用用户自定义函数将变量值或提示
信息输出到屏幕 277
21.4 小结 279
第22章 发布脚本 280
22.1 如何发布脚本 280
22.2 脚本的访问控制 283
22.3 如何更新/修改已发布的脚本 285
22.4 小结 286
第23章 初试牛刀之小技巧集锦与
实例分享 287
23.1 将多个指标合并到一个脚本 287
23.2 用脚本替代人工识别K线形态 289
23.3 定制指标实例 295
23.4 indicator脚本与strategy脚本之间的
相互转换 299
23.5 小结 302
四、应用篇
第24章 趋势指标/策略 304
24.1 均线类 304
24.1.1 均线类指标简介 304
24.1.2 实例1:均线彩虹指标 305
24.1.3 实例2:均线带策略 309
24.2 支撑/压力 313
24.2.1 支撑/压力简介 313
24.2.2 实例:支撑/压力通道 313
24.3 趋势线 321
24.3.1 趋势线简介 321
24.3.2 实例:趋势线 321
24.4 趋势通道 325
24.4.1 趋势通道简介 325
24.4.2 实例:ENV指标 325
24.5 一目均衡表 328
24.5.1 Ichimoku指标简介 328
24.5.2 实例:一目均衡表等多指标
复合策略 329
24.6 艾略特波浪 334
24.6.1 艾略特波浪简介 334
24.6.2 实例:Elliot Wave Chart
Pattern 334
24.7 小结 340
第25章 反转指标 341
25.1 反转指标简介 341
25.2 德马克序列指标 341
25.2.1 德马克序列指标简介 341
25.2.2 实例1:指标TD 9 342
25.2.3 实例2:指标TD 13 345
25.3 之字转向指标 351
25.3.1 之字转向指标简介 351
25.3.2 实例1:ZigZag++指标 351
25.3.3 实例2:Zigzag Trend/Divergence
Detector指标 354
25.4 小结 357
第26章 动量指标 358
26.1 动量指标简介 358
26.2 MACD指标 358
26.2.1 MACD指标的含义 358
26.2.2 实例:MACD Divergence 359
26.3 RSI指标 363
26.3.1 RSI指标的含义 363
26.3.2 实例:带有超买/超卖提示的
RSI指标 364
26.4 小结 366
第27章 成交量指标 367
27.1 成交量指标简介 367
27.2 实例1:成交量分布图 367
27.3 实例2:自动锚定成交量分布
指标 368
27.4 实例3:Volume Level & Breakout 369
27.5 实例4:VWAP指标 370
27.6 小结 374
第28章 背离技术分析 375
28.1 背离简介 375
28.2 实例1:RSI Divergence 376
28.3 实例2:多指标背离提示――适用于
任何震荡类指标 380
28.4 小结 385
第29章 K线形态与分形技术分析 386
29.1 K线形态简介 386
29.2 分形 387
29.2.1 实例1:威廉姆斯分形 388
29.2.2 实例2:Fractals(适用于多种
常规分形和威廉姆斯
分形) 391
29.3 小结 393
第30章 波动率指标 394
30.1 均幅指标 394
30.2 肯特纳通道 395
30.3 TTM Squeeze指标 396
30.3.1 TTM Squeeze指标简介 396
30.3.2 实例:TTM Squeeze 398
30.4 布林带 400
30.4.1 布林带简介 400
30.4.2 实例:布林带+均线带 401
30.5 小结 404
第31章 其他指标与技术分析工具 405
31.1 斐波那契回撤与扩展 405
31.1.1 斐波那契回撤与扩展简介 405
31.1.2 实例1:Auto Fib
Retracement 405
31.1.3 实例2:Auto Fib
Extension 407
31.1.4 实例3:Fibonacci Zone 407
31.2 跳空缺口 408
31.2.1 跳空缺口简介 408
31.2.2 实例:Gaps 409
31.3 砖形图 411
31.3.1 砖形图简介 411
31.3.2 如何使用砖形图 412
31.4 小结 416