1624344342
In this article, we’ll discuss information about the Shield Protocol project and SID token
Traditional assets face the problems of poor anti-censorship capabilities, high transaction costs, geographical restrictions and poor liquidity. It is quite difficult for the general public to invest in small amounts. Tokenized assets on the other hand can be divided infinitely, globally accessible, low-cost and readily available for transactions which gives them great potential to break these barriers with the help of blockchain technology. With this in mind, we present to you Shield protocol, a series of smart contracts that allow anyone to issue and trade tokenized assets. The price and state of the real-world assets are tracked and monitored by an oracle. A dynamic balance mechanism is implemented to enable minters and traders to obtain maximum benefits. In the meantime, the staking pools ensures the market price is stable and full of vitality. Shield protocol has the potential to enhance democracy and freedom by making tokenized assets accessible and available to anyone in the world.
Shield is a protocol that allows anyone to issue and trade synthetic assets that track the price of real world assets — everything from traditional equities to real estate. Shield unleashes the full power of asset tokenization to offer globally accessible, transparent and affordable access to financial assets.
How it Works
Shield’s unique sAsset minting mechanism can bring all financial assets on chain. Tokenized assets are transferable, storable and slicable which significantly lowers the barriers for participants.
Basic Operations.
A synthetic asset issued on Shield is called an sAsset. For instance, a synthetic version of real-world asset Google would be called sGoogle. The following are the main operations enabled by the Shield Protocol:
• Mint: Anyone can mint an sAsset by locking up collateral, either in the form of a stablecoin(USDT), the platform token(SID) or a different sAsset. The required collateral is decided by the sAsset itself and is at least a minimum multiple of the asset’s value (the minimum is 150%). For instance, if stock Google is reported to be trading at $100, minting 1 sGoogle would require at least $150 in stablecoin or in a different sAsset.
• Closed Position: A closed sAsset will be destroyed and the original collateral will be released.
• Trade: sAssets can be traded through AMMs market where users could purchase and sell them easily.
• Liquidity: SID can be earned through providing liquidity.
• Lock: Earn high rewards in the prize pool through locking SID.
Shield Participants
• Minters: Minters are those who mint sAssets with USDT, SID or other sAssets. While minting, the value of the collateral must be higher than the minimum pledge ratio of the sAssets (set by the community). The referenced price in minting is provided by the oracle, so minters should operate flexibly according to the market conditions of the sAsset. As long as the pledge ratio is higher than the minimum limit, the collateral can be withdrawn. Minters can adjust the pledge ratio by burning sAssets or depositing more collateral.
• Traders: Traders are those who buy and sell sAssets over MDEX with USDT and benefit from it.
• Lockers: Lockers earn SID token rewards by locking LP tokens or SID tokens (through the community). LP token lockers get rewards through SID inflation, and SID lockers get rewards through minting fees. When users lock the SID tokens, they will be eligible to participate in community voting, and the voting shares will be calculated based on the the amount of locked SID tokens. Community voting is an essential way to get new sAssets on the platform and to change protocol parameters.
• Oracle: The oracle is a designated user, responsible for providing accurate and up-to-date price pushes for a specific sAssets, and is the only user who is allowed to update the sAssets. Because the oracle plays an important role in the market of sAssets, when the oracle is inaccurate, it will be quickly dismissed by the community.
Liquidity, Governance and the SID Token
The Shield protocol utilizes AMMs (automated market makers) to facilitate sAssets trading against stablecoins, eg. trading against an sTSLA/USDT pool on PancakeSwap. Minting and liquidity provision are essential services without which Shield protocol would not be able to function. It would therefore be natural to incentivize minting and liquidity provision, the Shield protocol rewards liquidity providers with:
• Trading Fees: All sAssets trades go through AMMs. Only a very small amount of commission is generated and collected by a third-party market.
• The Native Shield Token(SID): Shield defines a native token with a deterministic inflation schedule that rewards sAsset liquidity providers.
• Whitelisting Assets: Enabling/disabling assets that can be minted.
• Key Parameter Changes: Changing key protocol parameters such as the minimum collateral ratio and trading fees.
The Shield token is acting as both an incentive for liquidity providers and the primary governance vehicle. It can be used for collateral and to vote on key issues.
Oracle, Liquidation and Peg Incentives
A critical function of the Shield protocol is the ingestion of asset price data external to the blockchain. This is necessary for determining the amount of collateral required for minting an sAsset, and for assessing whether or not sufficient collateral is locked for existing sAssets. The protocol achieves this via an oracle mechanism. Shield token holders submit votes on each asset, which the protocol aggregates to compute a median weighted by each holder’s Shield token stake. The Shield oracle submits prices at a high frequency to accommodate real-time pricing of exchange-traded assets.
The Mirror oracle facilitates solvency of sAssets by triggering collateral liquidations whenever the collateral ratio of an sAsset (collateral value/asset value) drops below the governance-mandated minimum(150%). Other uses could auction the collateral at a discount until the collateral ratio reaches the minimum threshold.
In addition, the Shield protocol also encourages trades. If the price of an sAsset trades at a discount to the oracle price, users are incentivized to purchase and profit from the future rise of the price. Conversely, if the price of an sAsset trades at a premium to the oracle price, market participants are incentivized to mint and sell it at the premium price, thereby profiting from the difference. In both cases, a drift of the sAsset’s price away from the price of the real-world asset creates arbitrage that market participants will exploit until the peg is restored.
Incentives for Locking
Half of the SID obtained by liquidity providers will go into the lock pool of the week when claimed. Users could lock the SID they hold and earn the big prize of the lock pool. The locked period lasts for 13 weeks and all SID in the pool will be released afterwards. Through this mechanism, Shield could maintain the circulating amount of SID and ensure the benefits of liquidity providers and the stability and health of Shield ecosystem.
Shield is not a project but more of a movement, a wave, a trend that leads the future!
Roadmap
SID token is now live on the Binance mainnet. The token address for SID is 0x9DadF352E3F997616F2562dd4Af246c971f6cb67. Be cautious not to purchase any other token with a smart contract different from this one (as this can be easily faked). We strongly advise to be vigilant and stay safe throughout the launch. Don’t let the excitement get the best of you.
Just be sure you have enough BNB in your wallet to cover the transaction fees.
Join To Get BNB (Binance Coin)! ☞ CLICK HERE
You will have to first buy one of the major cryptocurrencies, usually either Bitcoin (BTC), Ethereum (ETH), Tether (USDT), Binance (BNB)…
We will use Binance Exchange here as it is one of the largest crypto exchanges that accept fiat deposits.
Once you finished the KYC process. You will be asked to add a payment method. Here you can either choose to provide a credit/debit card or use a bank transfer, and buy one of the major cryptocurrencies, usually either Bitcoin (BTC), Ethereum (ETH), Tether (USDT), Binance (BNB)…
Step by Step Guide : What is Binance | How to Create an account on Binance (Updated 2021)
Next step
You need a wallet address to Connect to Pancakeswap Decentralized Exchange, we use Metamask wallet
If you don’t have a Metamask wallet, read this article and follow the steps
☞What is Metamask wallet | How to Create a wallet and Use
Transfer $BNB to your new Metamask wallet from your existing wallet
Next step
Connect Metamask Wallet to Pancakeswap Decentralized Exchange and Buy, Swap SID token
Contract: 0x9DadF352E3F997616F2562dd4Af246c971f6cb67
Read more: What is Pancakeswap | Beginner’s Guide on How to Use Pancakeswap
The top exchange for trading in SID token is currently Pancakeswap v2
Find more information SID
☞ Website ☞ Website 2 ☞ Whitepaper ☞ Source Code ☞ Social Channel ☞ Social Channel 2 ☞ Message Board ☞ Coinmarketcap
🔺DISCLAIMER: The Information in the post isn’t financial advice, is intended FOR GENERAL INFORMATION PURPOSES ONLY. Trading Cryptocurrency is VERY risky. Make sure you understand these risks and that you are responsible for what you do with your money.
🔥 If you’re a beginner. I believe the article below will be useful to you ☞ What You Should Know Before Investing in Cryptocurrency - For Beginner
⭐ ⭐ ⭐The project is of interest to the community. Join to Get free ‘GEEK coin’ (GEEKCASH coin)!
☞ **-----https://geekcash.org-----**⭐ ⭐ ⭐
Thank for visiting and reading this article! Please don’t forget to leave a like, comment and share!
#blockchain #bitcoin #sid #shield protocol
1624344342
In this article, we’ll discuss information about the Shield Protocol project and SID token
Traditional assets face the problems of poor anti-censorship capabilities, high transaction costs, geographical restrictions and poor liquidity. It is quite difficult for the general public to invest in small amounts. Tokenized assets on the other hand can be divided infinitely, globally accessible, low-cost and readily available for transactions which gives them great potential to break these barriers with the help of blockchain technology. With this in mind, we present to you Shield protocol, a series of smart contracts that allow anyone to issue and trade tokenized assets. The price and state of the real-world assets are tracked and monitored by an oracle. A dynamic balance mechanism is implemented to enable minters and traders to obtain maximum benefits. In the meantime, the staking pools ensures the market price is stable and full of vitality. Shield protocol has the potential to enhance democracy and freedom by making tokenized assets accessible and available to anyone in the world.
Shield is a protocol that allows anyone to issue and trade synthetic assets that track the price of real world assets — everything from traditional equities to real estate. Shield unleashes the full power of asset tokenization to offer globally accessible, transparent and affordable access to financial assets.
How it Works
Shield’s unique sAsset minting mechanism can bring all financial assets on chain. Tokenized assets are transferable, storable and slicable which significantly lowers the barriers for participants.
Basic Operations.
A synthetic asset issued on Shield is called an sAsset. For instance, a synthetic version of real-world asset Google would be called sGoogle. The following are the main operations enabled by the Shield Protocol:
• Mint: Anyone can mint an sAsset by locking up collateral, either in the form of a stablecoin(USDT), the platform token(SID) or a different sAsset. The required collateral is decided by the sAsset itself and is at least a minimum multiple of the asset’s value (the minimum is 150%). For instance, if stock Google is reported to be trading at $100, minting 1 sGoogle would require at least $150 in stablecoin or in a different sAsset.
• Closed Position: A closed sAsset will be destroyed and the original collateral will be released.
• Trade: sAssets can be traded through AMMs market where users could purchase and sell them easily.
• Liquidity: SID can be earned through providing liquidity.
• Lock: Earn high rewards in the prize pool through locking SID.
Shield Participants
• Minters: Minters are those who mint sAssets with USDT, SID or other sAssets. While minting, the value of the collateral must be higher than the minimum pledge ratio of the sAssets (set by the community). The referenced price in minting is provided by the oracle, so minters should operate flexibly according to the market conditions of the sAsset. As long as the pledge ratio is higher than the minimum limit, the collateral can be withdrawn. Minters can adjust the pledge ratio by burning sAssets or depositing more collateral.
• Traders: Traders are those who buy and sell sAssets over MDEX with USDT and benefit from it.
• Lockers: Lockers earn SID token rewards by locking LP tokens or SID tokens (through the community). LP token lockers get rewards through SID inflation, and SID lockers get rewards through minting fees. When users lock the SID tokens, they will be eligible to participate in community voting, and the voting shares will be calculated based on the the amount of locked SID tokens. Community voting is an essential way to get new sAssets on the platform and to change protocol parameters.
• Oracle: The oracle is a designated user, responsible for providing accurate and up-to-date price pushes for a specific sAssets, and is the only user who is allowed to update the sAssets. Because the oracle plays an important role in the market of sAssets, when the oracle is inaccurate, it will be quickly dismissed by the community.
Liquidity, Governance and the SID Token
The Shield protocol utilizes AMMs (automated market makers) to facilitate sAssets trading against stablecoins, eg. trading against an sTSLA/USDT pool on PancakeSwap. Minting and liquidity provision are essential services without which Shield protocol would not be able to function. It would therefore be natural to incentivize minting and liquidity provision, the Shield protocol rewards liquidity providers with:
• Trading Fees: All sAssets trades go through AMMs. Only a very small amount of commission is generated and collected by a third-party market.
• The Native Shield Token(SID): Shield defines a native token with a deterministic inflation schedule that rewards sAsset liquidity providers.
• Whitelisting Assets: Enabling/disabling assets that can be minted.
• Key Parameter Changes: Changing key protocol parameters such as the minimum collateral ratio and trading fees.
The Shield token is acting as both an incentive for liquidity providers and the primary governance vehicle. It can be used for collateral and to vote on key issues.
Oracle, Liquidation and Peg Incentives
A critical function of the Shield protocol is the ingestion of asset price data external to the blockchain. This is necessary for determining the amount of collateral required for minting an sAsset, and for assessing whether or not sufficient collateral is locked for existing sAssets. The protocol achieves this via an oracle mechanism. Shield token holders submit votes on each asset, which the protocol aggregates to compute a median weighted by each holder’s Shield token stake. The Shield oracle submits prices at a high frequency to accommodate real-time pricing of exchange-traded assets.
The Mirror oracle facilitates solvency of sAssets by triggering collateral liquidations whenever the collateral ratio of an sAsset (collateral value/asset value) drops below the governance-mandated minimum(150%). Other uses could auction the collateral at a discount until the collateral ratio reaches the minimum threshold.
In addition, the Shield protocol also encourages trades. If the price of an sAsset trades at a discount to the oracle price, users are incentivized to purchase and profit from the future rise of the price. Conversely, if the price of an sAsset trades at a premium to the oracle price, market participants are incentivized to mint and sell it at the premium price, thereby profiting from the difference. In both cases, a drift of the sAsset’s price away from the price of the real-world asset creates arbitrage that market participants will exploit until the peg is restored.
Incentives for Locking
Half of the SID obtained by liquidity providers will go into the lock pool of the week when claimed. Users could lock the SID they hold and earn the big prize of the lock pool. The locked period lasts for 13 weeks and all SID in the pool will be released afterwards. Through this mechanism, Shield could maintain the circulating amount of SID and ensure the benefits of liquidity providers and the stability and health of Shield ecosystem.
Shield is not a project but more of a movement, a wave, a trend that leads the future!
Roadmap
SID token is now live on the Binance mainnet. The token address for SID is 0x9DadF352E3F997616F2562dd4Af246c971f6cb67. Be cautious not to purchase any other token with a smart contract different from this one (as this can be easily faked). We strongly advise to be vigilant and stay safe throughout the launch. Don’t let the excitement get the best of you.
Just be sure you have enough BNB in your wallet to cover the transaction fees.
Join To Get BNB (Binance Coin)! ☞ CLICK HERE
You will have to first buy one of the major cryptocurrencies, usually either Bitcoin (BTC), Ethereum (ETH), Tether (USDT), Binance (BNB)…
We will use Binance Exchange here as it is one of the largest crypto exchanges that accept fiat deposits.
Once you finished the KYC process. You will be asked to add a payment method. Here you can either choose to provide a credit/debit card or use a bank transfer, and buy one of the major cryptocurrencies, usually either Bitcoin (BTC), Ethereum (ETH), Tether (USDT), Binance (BNB)…
Step by Step Guide : What is Binance | How to Create an account on Binance (Updated 2021)
Next step
You need a wallet address to Connect to Pancakeswap Decentralized Exchange, we use Metamask wallet
If you don’t have a Metamask wallet, read this article and follow the steps
☞What is Metamask wallet | How to Create a wallet and Use
Transfer $BNB to your new Metamask wallet from your existing wallet
Next step
Connect Metamask Wallet to Pancakeswap Decentralized Exchange and Buy, Swap SID token
Contract: 0x9DadF352E3F997616F2562dd4Af246c971f6cb67
Read more: What is Pancakeswap | Beginner’s Guide on How to Use Pancakeswap
The top exchange for trading in SID token is currently Pancakeswap v2
Find more information SID
☞ Website ☞ Website 2 ☞ Whitepaper ☞ Source Code ☞ Social Channel ☞ Social Channel 2 ☞ Message Board ☞ Coinmarketcap
🔺DISCLAIMER: The Information in the post isn’t financial advice, is intended FOR GENERAL INFORMATION PURPOSES ONLY. Trading Cryptocurrency is VERY risky. Make sure you understand these risks and that you are responsible for what you do with your money.
🔥 If you’re a beginner. I believe the article below will be useful to you ☞ What You Should Know Before Investing in Cryptocurrency - For Beginner
⭐ ⭐ ⭐The project is of interest to the community. Join to Get free ‘GEEK coin’ (GEEKCASH coin)!
☞ **-----https://geekcash.org-----**⭐ ⭐ ⭐
Thank for visiting and reading this article! Please don’t forget to leave a like, comment and share!
#blockchain #bitcoin #sid #shield protocol
1658068560
WordsCounted
We are all in the gutter, but some of us are looking at the stars.
-- Oscar Wilde
WordsCounted is a Ruby NLP (natural language processor). WordsCounted lets you implement powerful tokensation strategies with a very flexible tokeniser class.
["Bayrūt"]
and not ["Bayr", "ū", "t"]
, for example.Add this line to your application's Gemfile:
gem 'words_counted'
And then execute:
$ bundle
Or install it yourself as:
$ gem install words_counted
Pass in a string or a file path, and an optional filter and/or regexp.
counter = WordsCounted.count(
"We are all in the gutter, but some of us are looking at the stars."
)
# Using a file
counter = WordsCounted.from_file("path/or/url/to/my/file.txt")
.count
and .from_file
are convenience methods that take an input, tokenise it, and return an instance of WordsCounted::Counter
initialized with the tokens. The WordsCounted::Tokeniser
and WordsCounted::Counter
classes can be used alone, however.
WordsCounted.count(input, options = {})
Tokenises input and initializes a WordsCounted::Counter
object with the resulting tokens.
counter = WordsCounted.count("Hello Beirut!")
Accepts two options: exclude
and regexp
. See Excluding tokens from the analyser and Passing in a custom regexp respectively.
WordsCounted.from_file(path, options = {})
Reads and tokenises a file, and initializes a WordsCounted::Counter
object with the resulting tokens.
counter = WordsCounted.from_file("hello_beirut.txt")
Accepts the same options as .count
.
The tokeniser allows you to tokenise text in a variety of ways. You can pass in your own rules for tokenisation, and apply a powerful filter with any combination of rules as long as they can boil down into a lambda.
Out of the box the tokeniser includes only alpha chars. Hyphenated tokens and tokens with apostrophes are considered a single token.
#tokenise([pattern: TOKEN_REGEXP, exclude: nil])
tokeniser = WordsCounted::Tokeniser.new("Hello Beirut!").tokenise
# With `exclude`
tokeniser = WordsCounted::Tokeniser.new("Hello Beirut!").tokenise(exclude: "hello")
# With `pattern`
tokeniser = WordsCounted::Tokeniser.new("I <3 Beirut!").tokenise(pattern: /[a-z]/i)
See Excluding tokens from the analyser and Passing in a custom regexp for more information.
The WordsCounted::Counter
class allows you to collect various statistics from an array of tokens.
#token_count
Returns the token count of a given string.
counter.token_count #=> 15
#token_frequency
Returns a sorted (unstable) two-dimensional array where each element is a token and its frequency. The array is sorted by frequency in descending order.
counter.token_frequency
[
["the", 2],
["are", 2],
["we", 1],
# ...
["all", 1]
]
#most_frequent_tokens
Returns a hash where each key-value pair is a token and its frequency.
counter.most_frequent_tokens
{ "are" => 2, "the" => 2 }
#token_lengths
Returns a sorted (unstable) two-dimentional array where each element contains a token and its length. The array is sorted by length in descending order.
counter.token_lengths
[
["looking", 7],
["gutter", 6],
["stars", 5],
# ...
["in", 2]
]
#longest_tokens
Returns a hash where each key-value pair is a token and its length.
counter.longest_tokens
{ "looking" => 7 }
#token_density([ precision: 2 ])
Returns a sorted (unstable) two-dimentional array where each element contains a token and its density as a float, rounded to a precision of two. The array is sorted by density in descending order. It accepts a precision
argument, which must be a float.
counter.token_density
[
["are", 0.13],
["the", 0.13],
["but", 0.07 ],
# ...
["we", 0.07 ]
]
#char_count
Returns the char count of tokens.
counter.char_count #=> 76
#average_chars_per_token([ precision: 2 ])
Returns the average char count per token rounded to two decimal places. Accepts a precision argument which defaults to two. Precision must be a float.
counter.average_chars_per_token #=> 4
#uniq_token_count
Returns the number of unique tokens.
counter.uniq_token_count #=> 13
You can exclude anything you want from the input by passing the exclude
option. The exclude option accepts a variety of filters and is extremely flexible.
:odd?
.tokeniser =
WordsCounted::Tokeniser.new(
"Magnificent! That was magnificent, Trevor."
)
# Using a string
tokeniser.tokenise(exclude: "was magnificent")
# => ["that", "trevor"]
# Using a regular expression
tokeniser.tokenise(exclude: /trevor/)
# => ["magnificent", "that", "was", "magnificent"]
# Using a lambda
tokeniser.tokenise(exclude: ->(t) { t.length < 4 })
# => ["magnificent", "that", "magnificent", "trevor"]
# Using symbol
tokeniser = WordsCounted::Tokeniser.new("Hello! محمد")
tokeniser.tokenise(exclude: :ascii_only?)
# => ["محمد"]
# Using an array
tokeniser = WordsCounted::Tokeniser.new(
"Hello! اسماءنا هي محمد، كارولينا، سامي، وداني"
)
tokeniser.tokenise(
exclude: [:ascii_only?, /محمد/, ->(t) { t.length > 6}, "و"]
)
# => ["هي", "سامي", "وداني"]
The default regexp accounts for letters, hyphenated tokens, and apostrophes. This means twenty-one is treated as one token. So is Mohamad's.
/[\p{Alpha}\-']+/
You can pass your own criteria as a Ruby regular expression to split your string as desired.
For example, if you wanted to include numbers, you can override the regular expression:
counter = WordsCounted.count("Numbers 1, 2, and 3", pattern: /[\p{Alnum}\-']+/)
counter.tokens
#=> ["numbers", "1", "2", "and", "3"]
Use the from_file
method to open files. from_file
accepts the same options as .count
. The file path can be a URL.
counter = WordsCounted.from_file("url/or/path/to/file.text")
A hyphen used in leu of an em or en dash will form part of the token. This affects the tokeniser algorithm.
counter = WordsCounted.count("How do you do?-you are well, I see.")
counter.token_frequency
[
["do", 2],
["how", 1],
["you", 1],
["-you", 1], # WTF, mate!
["are", 1],
# ...
]
In this example -you
and you
are separate tokens. Also, the tokeniser does not include numbers by default. Remember that you can pass your own regular expression if the default behaviour does not fit your needs.
The program will normalise (downcase) all incoming strings for consistency and filters.
def self.from_url
# open url and send string here after removing html
end
Are you using WordsCounted to do something interesting? Please tell me about it.
Visit this website for one example of what you can do with WordsCounted.
Contributors
See contributors.
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)Author: Abitdodgy
Source Code: https://github.com/abitdodgy/words_counted
License: MIT license
1659601560
We are all in the gutter, but some of us are looking at the stars.
-- Oscar Wilde
WordsCounted is a Ruby NLP (natural language processor). WordsCounted lets you implement powerful tokensation strategies with a very flexible tokeniser class.
Are you using WordsCounted to do something interesting? Please tell me about it.
Visit this website for one example of what you can do with WordsCounted.
["Bayrūt"]
and not ["Bayr", "ū", "t"]
, for example.Add this line to your application's Gemfile:
gem 'words_counted'
And then execute:
$ bundle
Or install it yourself as:
$ gem install words_counted
Pass in a string or a file path, and an optional filter and/or regexp.
counter = WordsCounted.count(
"We are all in the gutter, but some of us are looking at the stars."
)
# Using a file
counter = WordsCounted.from_file("path/or/url/to/my/file.txt")
.count
and .from_file
are convenience methods that take an input, tokenise it, and return an instance of WordsCounted::Counter
initialized with the tokens. The WordsCounted::Tokeniser
and WordsCounted::Counter
classes can be used alone, however.
WordsCounted.count(input, options = {})
Tokenises input and initializes a WordsCounted::Counter
object with the resulting tokens.
counter = WordsCounted.count("Hello Beirut!")
Accepts two options: exclude
and regexp
. See Excluding tokens from the analyser and Passing in a custom regexp respectively.
WordsCounted.from_file(path, options = {})
Reads and tokenises a file, and initializes a WordsCounted::Counter
object with the resulting tokens.
counter = WordsCounted.from_file("hello_beirut.txt")
Accepts the same options as .count
.
The tokeniser allows you to tokenise text in a variety of ways. You can pass in your own rules for tokenisation, and apply a powerful filter with any combination of rules as long as they can boil down into a lambda.
Out of the box the tokeniser includes only alpha chars. Hyphenated tokens and tokens with apostrophes are considered a single token.
#tokenise([pattern: TOKEN_REGEXP, exclude: nil])
tokeniser = WordsCounted::Tokeniser.new("Hello Beirut!").tokenise
# With `exclude`
tokeniser = WordsCounted::Tokeniser.new("Hello Beirut!").tokenise(exclude: "hello")
# With `pattern`
tokeniser = WordsCounted::Tokeniser.new("I <3 Beirut!").tokenise(pattern: /[a-z]/i)
See Excluding tokens from the analyser and Passing in a custom regexp for more information.
The WordsCounted::Counter
class allows you to collect various statistics from an array of tokens.
#token_count
Returns the token count of a given string.
counter.token_count #=> 15
#token_frequency
Returns a sorted (unstable) two-dimensional array where each element is a token and its frequency. The array is sorted by frequency in descending order.
counter.token_frequency
[
["the", 2],
["are", 2],
["we", 1],
# ...
["all", 1]
]
#most_frequent_tokens
Returns a hash where each key-value pair is a token and its frequency.
counter.most_frequent_tokens
{ "are" => 2, "the" => 2 }
#token_lengths
Returns a sorted (unstable) two-dimentional array where each element contains a token and its length. The array is sorted by length in descending order.
counter.token_lengths
[
["looking", 7],
["gutter", 6],
["stars", 5],
# ...
["in", 2]
]
#longest_tokens
Returns a hash where each key-value pair is a token and its length.
counter.longest_tokens
{ "looking" => 7 }
#token_density([ precision: 2 ])
Returns a sorted (unstable) two-dimentional array where each element contains a token and its density as a float, rounded to a precision of two. The array is sorted by density in descending order. It accepts a precision
argument, which must be a float.
counter.token_density
[
["are", 0.13],
["the", 0.13],
["but", 0.07 ],
# ...
["we", 0.07 ]
]
#char_count
Returns the char count of tokens.
counter.char_count #=> 76
#average_chars_per_token([ precision: 2 ])
Returns the average char count per token rounded to two decimal places. Accepts a precision argument which defaults to two. Precision must be a float.
counter.average_chars_per_token #=> 4
#uniq_token_count
Returns the number of unique tokens.
counter.uniq_token_count #=> 13
You can exclude anything you want from the input by passing the exclude
option. The exclude option accepts a variety of filters and is extremely flexible.
:odd?
.tokeniser =
WordsCounted::Tokeniser.new(
"Magnificent! That was magnificent, Trevor."
)
# Using a string
tokeniser.tokenise(exclude: "was magnificent")
# => ["that", "trevor"]
# Using a regular expression
tokeniser.tokenise(exclude: /trevor/)
# => ["magnificent", "that", "was", "magnificent"]
# Using a lambda
tokeniser.tokenise(exclude: ->(t) { t.length < 4 })
# => ["magnificent", "that", "magnificent", "trevor"]
# Using symbol
tokeniser = WordsCounted::Tokeniser.new("Hello! محمد")
tokeniser.tokenise(exclude: :ascii_only?)
# => ["محمد"]
# Using an array
tokeniser = WordsCounted::Tokeniser.new(
"Hello! اسماءنا هي محمد، كارولينا، سامي، وداني"
)
tokeniser.tokenise(
exclude: [:ascii_only?, /محمد/, ->(t) { t.length > 6}, "و"]
)
# => ["هي", "سامي", "وداني"]
The default regexp accounts for letters, hyphenated tokens, and apostrophes. This means twenty-one is treated as one token. So is Mohamad's.
/[\p{Alpha}\-']+/
You can pass your own criteria as a Ruby regular expression to split your string as desired.
For example, if you wanted to include numbers, you can override the regular expression:
counter = WordsCounted.count("Numbers 1, 2, and 3", pattern: /[\p{Alnum}\-']+/)
counter.tokens
#=> ["numbers", "1", "2", "and", "3"]
Use the from_file
method to open files. from_file
accepts the same options as .count
. The file path can be a URL.
counter = WordsCounted.from_file("url/or/path/to/file.text")
A hyphen used in leu of an em or en dash will form part of the token. This affects the tokeniser algorithm.
counter = WordsCounted.count("How do you do?-you are well, I see.")
counter.token_frequency
[
["do", 2],
["how", 1],
["you", 1],
["-you", 1], # WTF, mate!
["are", 1],
# ...
]
In this example -you
and you
are separate tokens. Also, the tokeniser does not include numbers by default. Remember that you can pass your own regular expression if the default behaviour does not fit your needs.
The program will normalise (downcase) all incoming strings for consistency and filters.
def self.from_url
# open url and send string here after removing html
end
See contributors.
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)Author: abitdodgy
Source code: https://github.com/abitdodgy/words_counted
License: MIT license
#ruby #ruby-on-rails
1622687975
In this article, we’ll discuss information about the Shield Protocol project and SLD token
At Shield, the two rounds of our recent testnet campaigns have earned amazing participation from communities worldwide. The generous feedback from testnet run has also helped Shield take our revolutionary early-stage product and make it even better. We convey our sincere gratitude to you all! Now, we are ready to join the DeFi world and serve all crypto partners. So we’ve got news!
Shield will launch the ITO (Initial Twitter Offering). Following this, Shield DAO will fill the liquidity pool with all funds raised from the ITO (USDT+SLD) as initial liquidity for SLD!
Shield (SLD) ITO will be divided into three rounds on the @Shield_Dao official Twitter.
As a reward to our incredible community for the trust and support right from the start, we will launch a Shield Go Round (also known as a whitelist) for the Shield community.
Note that only participants with their KYC completed would be eligible for the ITO in every round. The whitelist will be distributed globally to the Shield partner community to convey appreciation and draw more partners who will move ahead with Shield.
Part 1: Mask Network Community
Shield is extremely pleased to be one of the first DeFi protocols on Mask Network to launch an ITO through the DAO review mechanism. Shield will provide two exclusive benefits to the Mask Network community.
Part 2: Shield Go Whitelist (Due at 9:00AM.EST June 2)
Like we just mentioned, Shield has opened an ITO whitelist campaign.
👉 [https://gleam.io/nHDZK/shield-go-competition] 👈
Shield has opened an ITO whitelist campaign for everyone. Follow the instructions in the link to complete the tasks one by one to qualify for the Shield ITO KYC.
Shield will send KYC emails to those selected for the whitelist on a DAILY BASIS during the campaign period. Once fill out the KYC procedure, then pass it to participate in the Shield ITO. Shield Go campaign and KYC procedure will be executed by “First come, first serve”. Act fast!
Part 3: Shield (SLD) ITO ThankYou Whitelist
DeFi has been developed and designed by an open community. It’s why it belongs to all of us. It’s also why we thought of commencing this even by paying tribute to our partners who ceaselessly support Shield. A list submitted by Shield’s DeFi KOL partners, organizations, and communities (who are often awarded at AMAs or other events)
We sincerely appreciate your support and look forward to it!
Things You Need to Know About Shield (SLD) ITO
Venue:
Shield Official Twitter (@Shield_Dao)
Quote Token:
$USDT, $USDC
Remember that:
1. Each user gets to participate once in three ITO rounds (winners will be eliminated in the next round).
2. After being whitelisted, you need to finish the KYC. Follow us on Twitter (@shield_dao) for the newest announcements.
3. If the previous round of SLDs is not sold out, the remaining SLDs will be added to the next round of ITO. Each round of ITO will last for 1 hour.
Liquidity pool platform: Uniswap
Liquidity Pool Currency: USDT+SLD
**Liquidity Pool Size: **All funds raised from ITO with the corresponding value of SLD
Step 1: Head over to the Shield website, and click on Start Trading
**Step 2: **Connect your MetaMask wallet
**Step 3: **Switch to the Kovan Testnet
Step 4: You can now deposit the funding fee, and go either long or short. Scroll down, and you can see your order history.
Step 5: Deposit your funding fee, and sign the transaction on your MetaMask.
Step 6: Open your long position, review the funding fee locked, and confirm the order.
SLD has been listed on a number of crypto exchanges, unlike other main cryptocurrencies, it cannot be directly purchased with fiats money. However, You can still easily buy this coin by first buying Bitcoin, ETH, USDT, BNB from any large exchanges and then transfer to the exchange that offers to trade this coin, in this guide article we will walk you through in detail the steps to buy SLD token.
You will have to first buy one of the major cryptocurrencies, usually either Bitcoin (BTC), Ethereum (ETH), Tether (USDT), Binance (BNB)…
We will use Binance Exchange here as it is one of the largest crypto exchanges that accept fiat deposits.
Binance is a popular cryptocurrency exchange which was started in China but then moved their headquarters to the crypto-friendly Island of Malta in the EU. Binance is popular for its crypto to crypto exchange services. Binance exploded onto the scene in the mania of 2017 and has since gone on to become the top crypto exchange in the world.
Once you finished the KYC process. You will be asked to add a payment method. Here you can either choose to provide a credit/debit card or use a bank transfer, and buy one of the major cryptocurrencies, usually either Bitcoin (BTC), Ethereum (ETH), Tether (USDT), Binance (BNB)…
Step by Step Guide : What is Binance | How to Create an account on Binance (Updated 2021)
Next step - Transfer your cryptos to an Altcoin Exchange
Once finished you will then need to make a BTC/ETH/USDT/BNB deposit to the exchange from Binance depending on the available market pairs. After the deposit is confirmed you may then purchase SLD from the website: https://www.shieldex.io.
The top exchange for trading in SLD token is currently …
Find more information SLD
☞ Website ☞ Whitepaper ☞ Social Channel ☞ Social Channel 2 ☞ Social Channel 3 ☞ Message Board ☞ Coinmarketcap
🔺DISCLAIMER: The Information in the post isn’t financial advice, is intended FOR GENERAL INFORMATION PURPOSES ONLY. Trading Cryptocurrency is VERY risky. Make sure you understand these risks and that you are responsible for what you do with your money.
🔥 If you’re a beginner. I believe the article below will be useful to you ☞ What You Should Know Before Investing in Cryptocurrency - For Beginner
⭐ ⭐ ⭐The project is of interest to the community. Join to Get free ‘GEEK coin’ (GEEKCASH coin)!
☞ **-----CLICK HERE-----**⭐ ⭐ ⭐
I hope this post will help you. Don’t forget to leave a like, comment and sharing it with others. Thank you!
#blockchain #bitcoin #sld #shield protocol
1622197808
SafeMoon is a decentralized finance (DeFi) token. This token consists of RFI tokenomics and auto-liquidity generating protocol. A DeFi token like SafeMoon has reached the mainstream standards under the Binance Smart Chain. Its success and popularity have been immense, thus, making the majority of the business firms adopt this style of cryptocurrency as an alternative.
A DeFi token like SafeMoon is almost similar to the other crypto-token, but the only difference being that it charges a 10% transaction fee from the users who sell their tokens, in which 5% of the fee is distributed to the remaining SafeMoon owners. This feature rewards the owners for holding onto their tokens.
Read More @ https://bit.ly/3oFbJoJ
#create a defi token like safemoon #defi token like safemoon #safemoon token #safemoon token clone #defi token