Security News
The Risks of Misguided Research in Supply Chain Security
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
github.com/ggoodwin/stocks-go
We use the Yahoo API to gather real-time stock data.
Make sure you have Go
installed on your machine.
You can check by running the following command in the console
go version
If you don't have Go
installed, you can Download Go and install it.
Run the following command in the console
, in the project directory
, to install the library with go get
go get github.com/ggoodwin/stocks-go
Add the import to your .go
file
import stocks "github.com/ggoodwin/stocks-go"
Add this to your .go
file
// Parameter: Stock Symbol
// Returns: strings ex: `$123.45`, `1.23%`, `↑`
price, percent, direction := stocks.GetPriceAndPercentage("AAPL")
// Parameter: Stock Symbol
// Returns `Result` struct
stock := stocks.GetFullDetails("AAPL")
type Result struct {
Symbol string `json:"symbol"`
ShortName string `json:"shortName"`
QuoteSourceName string `json:"quoteSourceName"`
Language string `json:"language"`
Region string `json:"region"`
QuoteType string `json:"quoteType"`
Triggerable bool `json:"triggerable"`
Currency string `json:"currency"`
Exchange string `json:"exchange"`
MessageBoardID string `json:"messageBoardId"`
ExchangeTimezoneName string `json:"exchangeTimezoneName"`
ExchangeTimezoneShortName string `json:"exchangeTimezoneShortName"`
GmtOffSetMilliseconds int `json:"gmtOffSetMilliseconds"`
Market string `json:"market"`
EsgPopulated bool `json:"esgPopulated"`
FirstTradeDateMilliseconds int64 `json:"firstTradeDateMilliseconds"`
RegularMarketChange float64 `json:"regularMarketChange"`
RegularMarketChangePercent float64 `json:"regularMarketChangePercent"`
RegularMarketTime int `json:"regularMarketTime"`
RegularMarketPrice float64 `json:"regularMarketPrice"`
RegularMarketDayHigh float64 `json:"regularMarketDayHigh"`
RegularMarketDayRange string `json:"regularMarketDayRange"`
RegularMarketDayLow float64 `json:"regularMarketDayLow"`
RegularMarketVolume int64 `json:"regularMarketVolume"`
RegularMarketPreviousClose float64 `json:"regularMarketPreviousClose"`
FullExchangeName string `json:"fullExchangeName"`
RegularMarketOpen float64 `json:"regularMarketOpen"`
AverageDailyVolume3Month int64 `json:"averageDailyVolume3Month"`
AverageDailyVolume10Day int64 `json:"averageDailyVolume10Day"`
StartDate int `json:"startDate"`
CoinImageURL string `json:"coinImageUrl"`
FiftyTwoWeekLowChange float64 `json:"fiftyTwoWeekLowChange"`
FiftyTwoWeekLowChangePercent float64 `json:"fiftyTwoWeekLowChangePercent"`
FiftyTwoWeekRange string `json:"fiftyTwoWeekRange"`
FiftyTwoWeekHighChange float64 `json:"fiftyTwoWeekHighChange"`
FiftyTwoWeekHighChangePercent float64 `json:"fiftyTwoWeekHighChangePercent"`
FiftyTwoWeekLow float64 `json:"fiftyTwoWeekLow"`
FiftyTwoWeekHigh float64 `json:"fiftyTwoWeekHigh"`
FiftyDayAverage float64 `json:"fiftyDayAverage"`
FiftyDayAverageChange float64 `json:"fiftyDayAverageChange"`
FiftyDayAverageChangePercent float64 `json:"fiftyDayAverageChangePercent"`
TwoHundredDayAverage float64 `json:"twoHundredDayAverage"`
TwoHundredDayAverageChange float64 `json:"twoHundredDayAverageChange"`
TwoHundredDayAverageChangePercent float64 `json:"twoHundredDayAverageChangePercent"`
MarketCap int64 `json:"marketCap"`
SourceInterval int `json:"sourceInterval"`
ExchangeDataDelayedBy int `json:"exchangeDataDelayedBy"`
Tradeable bool `json:"tradeable"`
MarketState string `json:"marketState"`
}
If you find an issue with this library, please report the issue using our Github Issues or check out the Security details if it is security related.
If you'd like, I welcome any contributions. Please read the Contributing document then Fork this library and submit a Pull Request. Make sure to click compare across forks
to see your fork.
This project is under the MIT License. See the License file for the full license text.
Check out our Changelog
Please read my Code of Conduct before contributing or engaging in discussions.
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.