Jump to content

Module:Stock tickers/NYSE: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m Protected "Module:Stock tickers/NYSE": High-risk Lua module; 1,000+ transclusions ([Edit=Require autoconfirmed or confirmed access] (indefinite))
publish changes from sandbox
Line 9: Line 9:
function p._GetURL(args)
function p._GetURL(args)
local ticker = args[1]
local ticker = args[1]

local exchange = args.exchange
-- By default the exchange will be NYSE
if not exchange then exchange = 'NYSE' end
-- Get corrected ticker
-- Get corrected ticker
ticker = p.FormatTickerURL(ticker)
ticker = p.FormatTickerURL(ticker)
-- NYSE official URL
-- NYSE official URL
url = 'https://www.nyse.com/quote/' .. exchangeCode[exchange] .. ':' .. ticker
url = 'https://www.nyse.com/quote/XXXX:' .. ticker
return url
return url
Line 35: Line 31:
return ticker
return ticker
end
end

-- Get NYSE exchange codes
exchangeCode = {
['NYSE'] = 'XNYS',
['AMEX'] = 'XASE',
['ARCA'] = 'ARCX',
['NASDAQ'] = 'XNAS'
}


return p
return p

Revision as of 22:43, 5 January 2018

local getArgs = require('Module:Arguments').getArgs
local p = {}

function p.GetURL(frame)
	local args = getArgs(frame)
	return p._GetURL(args)
end
 
function p._GetURL(args)
	local ticker = args[1]

	-- Get corrected ticker
	ticker = p.FormatTickerURL(ticker)
	
	-- NYSE official URL
	url = 'https://www.nyse.com/quote/XXXX:' .. ticker
	
	return url
end
 
function p.FormatTickerURL(ticker)
	
	-- Convert to upper case
	ticker = string.upper(ticker)
	
	-- NYSE.com formats for preferred shares / when issued
	-- Example: Input: PRE.PRD, Output: PREpD
	ticker = string.gsub(ticker, "%.PR", "p")
	ticker = string.gsub(ticker, "%.WI", "w")
	
	return ticker
end

return p