| line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
|
1
|
|
|
|
|
|
|
# Toronto Stock Exchange setups (incl TSX Venture). |
|
2
|
|
|
|
|
|
|
|
|
3
|
|
|
|
|
|
|
# Copyright 2005, 2006, 2007, 2008, 2009, 2010 Kevin Ryde |
|
4
|
|
|
|
|
|
|
|
|
5
|
|
|
|
|
|
|
# This file is part of Chart. |
|
6
|
|
|
|
|
|
|
# |
|
7
|
|
|
|
|
|
|
# Chart is free software; you can redistribute it and/or modify it under the |
|
8
|
|
|
|
|
|
|
# terms of the GNU General Public License as published by the Free Software |
|
9
|
|
|
|
|
|
|
# Foundation; either version 3, or (at your option) any later version. |
|
10
|
|
|
|
|
|
|
# |
|
11
|
|
|
|
|
|
|
# Chart is distributed in the hope that it will be useful, but WITHOUT ANY |
|
12
|
|
|
|
|
|
|
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
|
13
|
|
|
|
|
|
|
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more |
|
14
|
|
|
|
|
|
|
# details. |
|
15
|
|
|
|
|
|
|
# |
|
16
|
|
|
|
|
|
|
# You should have received a copy of the GNU General Public License along |
|
17
|
|
|
|
|
|
|
# with Chart. If not, see <http://www.gnu.org/licenses/>. |
|
18
|
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
|
package App::Chart::Suffix::TO; |
|
20
|
1
|
|
|
1
|
|
389
|
use 5.006; |
|
|
1
|
|
|
|
|
3
|
|
|
21
|
1
|
|
|
1
|
|
4
|
use strict; |
|
|
1
|
|
|
|
|
2
|
|
|
|
1
|
|
|
|
|
16
|
|
|
22
|
1
|
|
|
1
|
|
3
|
use warnings; |
|
|
1
|
|
|
|
|
2
|
|
|
|
1
|
|
|
|
|
24
|
|
|
23
|
1
|
|
|
1
|
|
349
|
use Locale::TextDomain 'App-Chart'; |
|
|
1
|
|
|
|
|
13706
|
|
|
|
1
|
|
|
|
|
5
|
|
|
24
|
|
|
|
|
|
|
|
|
25
|
1
|
|
|
1
|
|
5712
|
use App::Chart; |
|
|
0
|
|
|
|
|
|
|
|
|
0
|
|
|
|
|
|
|
|
26
|
|
|
|
|
|
|
use App::Chart::Sympred; |
|
27
|
|
|
|
|
|
|
use App::Chart::TZ; |
|
28
|
|
|
|
|
|
|
use App::Chart::Weblink; |
|
29
|
|
|
|
|
|
|
use App::Chart::Weblink::SandP; |
|
30
|
|
|
|
|
|
|
use App::Chart::Yahoo; |
|
31
|
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
|
|
|
33
|
|
|
|
|
|
|
our $timezone_toronto = App::Chart::TZ->new |
|
34
|
|
|
|
|
|
|
(name => __('Toronto'), |
|
35
|
|
|
|
|
|
|
choose => [ 'America/Toronto' ], |
|
36
|
|
|
|
|
|
|
fallback => 'EST+5'); |
|
37
|
|
|
|
|
|
|
|
|
38
|
|
|
|
|
|
|
# http://ca.finance.yahoo.com/indices?u |
|
39
|
|
|
|
|
|
|
# ^GSPTSE - S&P TSX Composite |
|
40
|
|
|
|
|
|
|
# ^SPTSECP - S&P TSX 60 Capped |
|
41
|
|
|
|
|
|
|
# ^SPTSECP3 - S&P TSX 300 Capped |
|
42
|
|
|
|
|
|
|
# ^SPTSEM - Midcap |
|
43
|
|
|
|
|
|
|
# ^SPTSES - Smallcap |
|
44
|
|
|
|
|
|
|
# ^SPTTEN - Energy |
|
45
|
|
|
|
|
|
|
# ^SPTTFS - Financials |
|
46
|
|
|
|
|
|
|
# ^SPTTGD - Gold |
|
47
|
|
|
|
|
|
|
# ^SPTTTK - Information Technology |
|
48
|
|
|
|
|
|
|
# ^GSPTTCD - Consumer Discretionary |
|
49
|
|
|
|
|
|
|
# ^GSPTTCS - Consumer Staples |
|
50
|
|
|
|
|
|
|
# ^GSPTTHC - Health Care |
|
51
|
|
|
|
|
|
|
# ^GSPTTIN - Industrials |
|
52
|
|
|
|
|
|
|
# ^GSPTTMN - Diversified Metals & Mining |
|
53
|
|
|
|
|
|
|
# ^GSPTTMT - Materials |
|
54
|
|
|
|
|
|
|
# ^GSPTTRE - Real Estate |
|
55
|
|
|
|
|
|
|
# ^GSPTTTS - Telecommunications Services |
|
56
|
|
|
|
|
|
|
# ^GSPTTUT - Utilities |
|
57
|
|
|
|
|
|
|
# |
|
58
|
|
|
|
|
|
|
# TSX Venture |
|
59
|
|
|
|
|
|
|
# ^SPCDNX - CDNX Index |
|
60
|
|
|
|
|
|
|
# |
|
61
|
|
|
|
|
|
|
|
|
62
|
|
|
|
|
|
|
my $pred_indexes = App::Chart::Sympred::Regexp->new (qr/^\^(GSPT|SPT|SPC)/); |
|
63
|
|
|
|
|
|
|
my $pred_shares = App::Chart::Sympred::Regexp->new (qr/\.(TO|V)$/); |
|
64
|
|
|
|
|
|
|
|
|
65
|
|
|
|
|
|
|
my $pred_any = App::Chart::Sympred::Any->new ($pred_indexes, $pred_shares); |
|
66
|
|
|
|
|
|
|
$timezone_toronto->setup_for_symbol ($pred_any); |
|
67
|
|
|
|
|
|
|
|
|
68
|
|
|
|
|
|
|
|
|
69
|
|
|
|
|
|
|
# ;; TSX trades 9:30 to 4pm and extended session 4:10pm to 5pm for member firms |
|
70
|
|
|
|
|
|
|
# ;; see: http://www.tsx.com/en/contactUs/index.html#holidays |
|
71
|
|
|
|
|
|
|
# (yahoo-quote-lock! toronto-symbol? |
|
72
|
|
|
|
|
|
|
# #,(hms->seconds 9 30 0) #,(hms->seconds 17 0 0)) |
|
73
|
|
|
|
|
|
|
# |
|
74
|
|
|
|
|
|
|
# ;; dunno if indexes update in extended session, cover that just in case |
|
75
|
|
|
|
|
|
|
# (yahoo-quote-lock! yahoo-index-symbol-toronto? |
|
76
|
|
|
|
|
|
|
# #,(hms->seconds 9 30 0) #,(hms->seconds 17 0 0)) |
|
77
|
|
|
|
|
|
|
|
|
78
|
|
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
79
|
|
|
|
|
|
|
# weblink - only the home page for now ... |
|
80
|
|
|
|
|
|
|
|
|
81
|
|
|
|
|
|
|
App::Chart::Weblink->new |
|
82
|
|
|
|
|
|
|
(pred => $pred_any, |
|
83
|
|
|
|
|
|
|
name => __('_Toronto Stock Exchange Home Page'), |
|
84
|
|
|
|
|
|
|
desc => __('Open web browser at the Toronto Stock Exchange home page'), |
|
85
|
|
|
|
|
|
|
url => 'http://www.tsx.com'); |
|
86
|
|
|
|
|
|
|
|
|
87
|
|
|
|
|
|
|
|
|
88
|
|
|
|
|
|
|
|
|
89
|
|
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
90
|
|
|
|
|
|
|
# weblink - S&P index info |
|
91
|
|
|
|
|
|
|
|
|
92
|
|
|
|
|
|
|
my %sandp_table |
|
93
|
|
|
|
|
|
|
= ('^GSPTSE' => 'tsx', |
|
94
|
|
|
|
|
|
|
'^SPTSECP' => 'tsx60cap', |
|
95
|
|
|
|
|
|
|
# '^SPTSECP3' => undef, # S&P TSX 300 Capped |
|
96
|
|
|
|
|
|
|
'^SPTSEM' => 'tsxmid', |
|
97
|
|
|
|
|
|
|
'^SPTSES' => 'tsxsml', |
|
98
|
|
|
|
|
|
|
'^SPCDNX' => 'tsxven', # TSX Venture |
|
99
|
|
|
|
|
|
|
|
|
100
|
|
|
|
|
|
|
# |
|
101
|
|
|
|
|
|
|
# sectors, one shared page |
|
102
|
|
|
|
|
|
|
'^SPTTEN' => 'tsxsec', # Energy |
|
103
|
|
|
|
|
|
|
'^SPTTFS' => 'tsxsec', # Financials |
|
104
|
|
|
|
|
|
|
'^SPTTGD' => 'tsxsec', # Gold |
|
105
|
|
|
|
|
|
|
'^SPTTTK' => 'tsxsec', # Information Technology |
|
106
|
|
|
|
|
|
|
'^GSPTTCD'=> 'tsxsec', # Consumer Discretionary |
|
107
|
|
|
|
|
|
|
'^GSPTTCS'=> 'tsxsec', # Consumer Staples |
|
108
|
|
|
|
|
|
|
'^GSPTTHC'=> 'tsxsec', # Health Care |
|
109
|
|
|
|
|
|
|
'^GSPTTIN'=> 'tsxsec', # Industrials |
|
110
|
|
|
|
|
|
|
'^GSPTTMN'=> 'tsxsec', # Diversified Metals & Mining |
|
111
|
|
|
|
|
|
|
'^GSPTTMT'=> 'tsxsec', # Materials |
|
112
|
|
|
|
|
|
|
'^GSPTTRE'=> 'tsxsec', # Real Estate |
|
113
|
|
|
|
|
|
|
'^GSPTTTS'=> 'tsxsec', # Telecommunications Services |
|
114
|
|
|
|
|
|
|
'^GSPTTUT' => 'tsxsec', # Utilities |
|
115
|
|
|
|
|
|
|
); |
|
116
|
|
|
|
|
|
|
|
|
117
|
|
|
|
|
|
|
App::Chart::Weblink::SandP->new |
|
118
|
|
|
|
|
|
|
(url_pattern => 'http://www2.standardandpoors.com/portal/site/sp/{lang}/page.topic/indices_{symbol}/2,3,2,3,0,0,0,0,0,0,0,0,0,0,0,0.html', |
|
119
|
|
|
|
|
|
|
symbol_table => \%sandp_table); |
|
120
|
|
|
|
|
|
|
|
|
121
|
|
|
|
|
|
|
|
|
122
|
|
|
|
|
|
|
1; |
|
123
|
|
|
|
|
|
|
__END__ |