株:損益指数
22846 ワード
Cover photo @ AustIndistelショーによって❤️ to creator
ブログをアップしてから久しぶりです.私が最近行ったプロジェクトは、株のために利益または損失指標を作ることでした.
これは、バニラJSを使用して作成されたプロジェクトです 株価 初期投資額 数量 これらの3つのパラメータに基づいて、現在の価格の出力を与え、それに応じて利益と損失を示します.
何も恐れることはない
プロジェクトで必要なもの、3つの入力パラメータを覚えておいてください 株記号 初期投資額 在庫数量 これらの3つの事を含めて
私たちは、右の株式シンボルのユーザーが入力しているこの値を取得するつもりである人をリラックスして、その閉じられた価格は私たちのSPになりますここで私たちのロジックが正しいことをお知らせするためにここに含まれています.
だから今問題はどこに私は私の閉鎖価格を得るつもりだこのAPIを取得するに発生します.チルマン
だから、私たちは、ティンゴAPIを使用するか、お気に入りのAPIのいずれかを使用して、いくつかの使用AlphaVantage、私はそれを使用したことがないので、私は違いを伝えることはできません.
とにかく、アカウントを作るapi.tiingo.com . それは5分の仕事のようにしてapi.tiingo.com/account/api/token . ここにAPIキーは、誰にも与えないでください、それを安全に保つ.
今どのようにTiingo APIの作品は、特定の株の株式のシンボルを呼び出すことによって通常です.例えば、
このリンクを入力してください.あなたがそれを持っていないならば、それをインストールしてください.ヘッダを追加する
このエラーを解決する多くの方法があります、我々は簡単な方法を使用してこれを行うつもりです.任意の方法を使用できます.ジャスト・ゴー
今、我々は1つの問題はまだ残っている我々のアプリケーションを作った.我々のコードは、そこに我々のAPIキーでそこに正に座っています.我々は確かにGithubにこれをプッシュすることはできません.だから、我々は何の男は、この状況で行う必要がありますか
問題に戻る
コードをプッシュし、正常にコードをアップロードして、APIキーを安全に保つ.
ブログをアップしてから久しぶりです.私が最近行ったプロジェクトは、株のために利益または損失指標を作ることでした.
これは、バニラJSを使用して作成されたプロジェクトです
スリヤンチョクラ / 損益表示
株:損益指数
今、あなたはどのようにこの素晴らしいウェブサイトを構築することができますを表示したい。
何も恐れることはない
プロジェクトで必要なもの、3つの入力パラメータを覚えておいてください
index.html
<form>
<label><input id="input1" placeholder="Enter the stock symbol" type="text" required> Enter the stock symbol</label>
<label><input id="input2" placeholder="Enter Cost price of Stock" type="text" required> Purchase Price</label>
<label><input id="input3" placeholder="Enter stock Quantity" type="text" required> Stock Quantity </label>
<button type="submit">Check</button>
</form>
<div class="output0"></div>
<div class="output"></div>
これらで、現在JavaScriptのセクションに移動するapp.js
フォーム要素を返し、「送信」ボタンにイベントリスナーを追加するform = document.forms[0];
input1 = document.querySelector("#input1");
input2 = document.querySelector("#input2");
input3 = document.querySelector("#input3");
output = document.querySelector(".output");
output0 = document.querySelector(".output0");
form.addEventListener("submit", checkHandler);
function checkHandler(e){
e.preventDefault();
let CP = input2.value;
let Qty = input3.value;
if( !isNaN(CP) && !isNaN(Qty) && !isNaN(SP)) {
CP = Number(CP);
Qty = Number(Qty);
SP = Number(SP);
if(CP>0 && Qty>0 && SP>0){
if (CP>SP){
const loss = ((CP-SP)*Qty).toFixed(2);
const lossPer = (((CP-SP)*100)/CP).toFixed(2);
output.innerHTML= "You lost ${lossPer}%. Your total loss is $${loss}";
}
else{
const profit = ((SP-CP)*Qty).toFixed(2)
const profitPer=(((SP-CP)*100)/CP).toFixed(2) ;
output.innerHTML= "You gained ${profitPer}%. Your total profit is $${profit}";
}
}
else {
output.innerHTML="Please enter values greater than 0 (only numbers are allowed in above fields"
}
}
else{
output.innerHTML="Please enter values greater than 0 (only numbers are allowed in above fields"
}
})
.catch(error => console.log('error', error));
}
}
閉じるこの動画はお気に入りから削除されています私たちは、右の株式シンボルのユーザーが入力しているこの値を取得するつもりである人をリラックスして、その閉じられた価格は私たちのSPになりますここで私たちのロジックが正しいことをお知らせするためにここに含まれています.
だから今問題はどこに私は私の閉鎖価格を得るつもりだこのAPIを取得するに発生します.チルマン
だから、私たちは、ティンゴAPIを使用するか、お気に入りのAPIのいずれかを使用して、いくつかの使用AlphaVantage、私はそれを使用したことがないので、私は違いを伝えることはできません.
とにかく、アカウントを作るapi.tiingo.com . それは5分の仕事のようにしてapi.tiingo.com/account/api/token . ここにAPIキーは、誰にも与えないでください、それを安全に保つ.
今どのようにTiingo APIの作品は、特定の株の株式のシンボルを呼び出すことによって通常です.例えば、
https://api.tiingo.com/tiingo/daily/AAPL/prices
- ここではアップルストックシンボルを使用しているAAPL
(これはInput 1になります).それはあなたのトークンに関連付けられていないので、今は動作しません.このリンクを入力してください.あなたがそれを持っていないならば、それをインストールしてください.ヘッダを追加する
Content-type: application/json
Authorization: Token <your token>
ボタンをクリックします.あなたは、このように見える素晴らしいJSONタイプファイルを得ます[
{
"adjClose": 148.89,
"adjHigh": 149.05,
"adjLow": 145.84,
"adjOpen": 146.19,
"adjVolume": 73779113,
"close": 148.89,
"date": "2021-08-12T00:00:00+00:00",
"divCash": 0.0,
"high": 149.05,
"low": 145.84,
"open": 146.19,
"splitFactor": 1.0,
"volume": 73779113
}
]
をクリックし、リンクを取得します.コード全体をコピーし、app.js
チェックハンドラ関数の内部var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Token <your token>"); // your token doesn't go in <>. It is a way to explain you
myHeaders.append("Cookie", "sessionid=<your session id>");
var requestOptions = {
method: 'GET',
headers: myHeaders,
redirect: 'follow'
};
fetch("https://api.tiingo.com/tiingo/daily/AAPL/prices", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
実行時には、Corsのエラーを取得する必要があります、それは通常は何もpanickすることです.HTTPとHTTPSの要求をセキュリティ上の理由のために別の起源のリソースに、主にユーザーのデータを保護し、アプリケーションを危うくする攻撃を防ぐためにリソースを制限するために使用されます.このエラーを解決する多くの方法があります、我々は簡単な方法を使用してこれを行うつもりです.任意の方法を使用できます.ジャスト・ゴー
https://cors-anywhere.herokuapp.com/
と“一時的なアクセスを要求する”も1行を追加するhttps://cors-anywhere.herokuapp.com/
このようなAPIリンクの前にfetch("https://cors-anywhere.herokuapp.com/https://api.tiingo.com/tiingo/daily/AAPL/prices", requestOptions)
さて、このスニペットを最初に修正しましょう.まず、コンソールに表示されているJSONファイル全体を必要としません.私たちは株の株価にだけ興味がある.の代わりに.then(result => console.log(result))
こうする .then(json => {
var translatedText = json[0].adjClose;
SP = translatedText;
output0.innerHTML="Current price for this stock is: ${SP}"
我々の第2の問題に関して、現在のスニペットは常にAAPL価格の価値を与えます.変更するには、app.js
var serverURL = "https://cors-anywhere.herokuapp.com/https://api.tiingo.com/tiingo/daily/"
function getTranslationURL(text){
return serverURL + text +"/prices"
}
var SP = 0;
代わりにfetch("https://cors-anywhere.herokuapp.com/https://api.tiingo.com/tiingo/daily/AAPL/prices", requestOptions)
こうするfetch(getTranslationURL(inputText), requestOptions)
おめでとう!あなたは、アプリケーションで行われますあなたがGithubにあなたのプロジェクトをアップロードしたいならば、この部分をしてください
今、我々は1つの問題はまだ残っている我々のアプリケーションを作った.我々のコードは、そこに我々のAPIキーでそこに正に座っています.我々は確かにGithubにこれをプッシュすることはできません.だから、我々は何の男は、この状況で行う必要がありますか
We should not push our code onto github
- Suryansh Chopra (2021)
それは冗談だよ。
問題に戻る
config.js
ファイルvar config = {
TOKEN: 'your token' //your token must be inside ''.
}
これらの行をapp.js
ファイルvar token = config.TOKEN;
//rest code
myHeaders.append("Authorization", "Token " + token);
今すぐ作成.gitignore
ファイルと追加config.js
インサイド.コードをプッシュし、正常にコードをアップロードして、APIキーを安全に保つ.
Reference
この問題について(株:損益指数), 我々は、より多くの情報をここで見つけました https://dev.to/suryanshchopra/stocks-profit-or-loss-indicator-12fpテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol