# Finviz Screening Parameters Constants
# This file contains all valid parameter values for Finviz screening
# Exchange (取引所) - exch
EXCHANGE_VALUES = {
'': 'Any',
'amex': 'AMEX',
'cboe': 'CBOE',
'nasd': 'NASDAQ',
'nyse': 'NYSE',
'modal': 'Custom'
}
# Index (指数) - idx
INDEX_VALUES = {
'': 'Any',
'sp500': 'S&P 500',
'ndx': 'NASDAQ 100',
'dji': 'DJIA',
'rut': 'RUSSELL 2000',
'modal': 'Custom'
}
# Sector (セクター) - sec
SECTOR_VALUES = {
'': 'Any',
'basicmaterials': 'Basic Materials',
'communicationservices': 'Communication Services',
'consumercyclical': 'Consumer Cyclical',
'consumerdefensive': 'Consumer Defensive',
'energy': 'Energy',
'financial': 'Financial',
'healthcare': 'Healthcare',
'industrials': 'Industrials',
'realestate': 'Real Estate',
'technology': 'Technology',
'utilities': 'Utilities',
'modal': 'Custom'
}
# Industry (業界) - ind
INDUSTRY_VALUES = {
'': 'Any',
'stocksonly': 'Stocks only (ex-Funds)',
'exchangetradedfund': 'Exchange Traded Fund',
'advertisingagencies': 'Advertising Agencies',
'aerospacedefense': 'Aerospace & Defense',
'agriculturalinputs': 'Agricultural Inputs',
'airlines': 'Airlines',
'airportsairservices': 'Airports & Air Services',
'aluminum': 'Aluminum',
'apparelmanufacturing': 'Apparel Manufacturing',
'apparelretail': 'Apparel Retail',
'assetmanagement': 'Asset Management',
'automanufacturers': 'Auto Manufacturers',
'autoparts': 'Auto Parts',
'autotruckdealerships': 'Auto & Truck Dealerships',
'banksdiversified': 'Banks - Diversified',
'banksregional': 'Banks - Regional',
'beveragesbrewers': 'Beverages - Brewers',
'beveragesnonalcoholic': 'Beverages - Non-Alcoholic',
'beverageswineriesdistilleries': 'Beverages - Wineries & Distilleries',
'biotechnology': 'Biotechnology',
'broadcasting': 'Broadcasting',
'buildingmaterials': 'Building Materials',
'buildingproductsequipment': 'Building Products & Equipment',
'businessequipmentsupplies': 'Business Equipment & Supplies',
'capitalmarkets': 'Capital Markets',
'chemicals': 'Chemicals',
'closedendfunddebt': 'Closed-End Fund - Debt',
'closedendfundequity': 'Closed-End Fund - Equity',
'closedendfundforeign': 'Closed-End Fund - Foreign',
'cokingcoal': 'Coking Coal',
'communicationequipment': 'Communication Equipment',
'computerhardware': 'Computer Hardware',
'confectioners': 'Confectioners',
'conglomerates': 'Conglomerates',
'consultingservices': 'Consulting Services',
'consumerelectronics': 'Consumer Electronics',
'copper': 'Copper',
'creditservices': 'Credit Services',
'departmentstores': 'Department Stores',
'diagnosticsresearch': 'Diagnostics & Research',
'discountstores': 'Discount Stores',
'drugmanufacturersgeneral': 'Drug Manufacturers - General',
'drugmanufacturersspecialtygeneric': 'Drug Manufacturers - Specialty & Generic',
'educationtrainingservices': 'Education & Training Services',
'electricalequipmentparts': 'Electrical Equipment & Parts',
'electroniccomponents': 'Electronic Components',
'electronicgamingmultimedia': 'Electronic Gaming & Multimedia',
'electronicscomputerdistribution': 'Electronics & Computer Distribution',
'engineeringconstruction': 'Engineering & Construction',
'entertainment': 'Entertainment',
'farmheavyconstructionmachinery': 'Farm & Heavy Construction Machinery',
'farmproducts': 'Farm Products',
'financialconglomerates': 'Financial Conglomerates',
'financialdatastockexchanges': 'Financial Data & Stock Exchanges',
'fooddistribution': 'Food Distribution',
'footwearaccessories': 'Footwear & Accessories',
'furnishingsfixturesappliances': 'Furnishings, Fixtures & Appliances',
'gambling': 'Gambling',
'gold': 'Gold',
'grocerystores': 'Grocery Stores',
'healthcareplans': 'Healthcare Plans',
'healthinformationservices': 'Health Information Services',
'homeimprovementretail': 'Home Improvement Retail',
'householdpersonalproducts': 'Household & Personal Products',
'industrialdistribution': 'Industrial Distribution',
'informationtechnologyservices': 'Information Technology Services',
'infrastructureoperations': 'Infrastructure Operations',
'insurancebrokers': 'Insurance Brokers',
'insurancediversified': 'Insurance - Diversified',
'insurancelife': 'Insurance - Life',
'insurancepropertycasualty': 'Insurance - Property & Casualty',
'insurancereinsurance': 'Insurance - Reinsurance',
'insurancespecialty': 'Insurance - Specialty',
'integratedfreightlogistics': 'Integrated Freight & Logistics',
'internetcontentinformation': 'Internet Content & Information',
'internetretail': 'Internet Retail',
'leisure': 'Leisure',
'lodging': 'Lodging',
'lumberwoodproduction': 'Lumber & Wood Production',
'luxurygoods': 'Luxury Goods',
'marineshipping': 'Marine Shipping',
'medicalcarefacilities': 'Medical Care Facilities',
'medicaldevices': 'Medical Devices',
'medicaldistribution': 'Medical Distribution',
'medicalinstrumentssupplies': 'Medical Instruments & Supplies',
'metalfabrication': 'Metal Fabrication',
'mortgagefinance': 'Mortgage Finance',
'oilgasdrilling': 'Oil & Gas Drilling',
'oilgasep': 'Oil & Gas E&P',
'oilgasequipmentservices': 'Oil & Gas Equipment & Services',
'oilgasintegrated': 'Oil & Gas Integrated',
'oilgasmidstream': 'Oil & Gas Midstream',
'oilgasrefiningmarketing': 'Oil & Gas Refining & Marketing',
'otherindustrialmetalsmining': 'Other Industrial Metals & Mining',
'otherpreciousmetalsmining': 'Other Precious Metals & Mining',
'packagedfoods': 'Packaged Foods',
'packagingcontainers': 'Packaging & Containers',
'paperpaperproducts': 'Paper & Paper Products',
'personalservices': 'Personal Services',
'pharmaceuticalretailers': 'Pharmaceutical Retailers',
'pollutiontreatmentcontrols': 'Pollution & Treatment Controls',
'publishing': 'Publishing',
'railroads': 'Railroads',
'realestatedevelopment': 'Real Estate - Development',
'realestatediversified': 'Real Estate - Diversified',
'realestateservices': 'Real Estate Services',
'recreationalvehicles': 'Recreational Vehicles',
'reitdiversified': 'REIT - Diversified',
'reithealthcarefacilities': 'REIT - Healthcare Facilities',
'reithotelmotel': 'REIT - Hotel & Motel',
'reitindustrial': 'REIT - Industrial',
'reitmortgage': 'REIT - Mortgage',
'reitoffice': 'REIT - Office',
'reitresidential': 'REIT - Residential',
'reitretail': 'REIT - Retail',
'reitspecialty': 'REIT - Specialty',
'rentalleasingservices': 'Rental & Leasing Services',
'residentialconstruction': 'Residential Construction',
'resortscasinos': 'Resorts & Casinos',
'restaurants': 'Restaurants',
'scientifictechnicalinstruments': 'Scientific & Technical Instruments',
'securityprotectionservices': 'Security & Protection Services',
'semiconductorequipmentmaterials': 'Semiconductor Equipment & Materials',
'semiconductors': 'Semiconductors',
'shellcompanies': 'Shell Companies',
'silver': 'Silver',
'softwareapplication': 'Software - Application',
'softwareinfrastructure': 'Software - Infrastructure',
'solar': 'Solar',
'specialtybusinessservices': 'Specialty Business Services',
'specialtychemicals': 'Specialty Chemicals',
'specialtyindustrialmachinery': 'Specialty Industrial Machinery',
'specialtyretail': 'Specialty Retail',
'staffingemploymentservices': 'Staffing & Employment Services',
'steel': 'Steel',
'telecomservices': 'Telecom Services',
'textilemanufacturing': 'Textile Manufacturing',
'thermalcoal': 'Thermal Coal',
'tobacco': 'Tobacco',
'toolsaccessories': 'Tools & Accessories',
'travelservices': 'Travel Services',
'trucking': 'Trucking',
'uranium': 'Uranium',
'utilitiesdiversified': 'Utilities - Diversified',
'utilitiesindependentpowerproducers': 'Utilities - Independent Power Producers',
'utilitiesregulatedelectric': 'Utilities - Regulated Electric',
'utilitiesregulatedgas': 'Utilities - Regulated Gas',
'utilitiesregulatedwater': 'Utilities - Regulated Water',
'utilitiesrenewable': 'Utilities - Renewable',
'wastemanagement': 'Waste Management',
'modal': 'Custom'
}
# Country (国) - geo
COUNTRY_VALUES = {
'': 'Any',
'usa': 'USA',
'notusa': 'Foreign (ex-USA)',
'asia': 'Asia',
'europe': 'Europe',
'latinamerica': 'Latin America',
'bric': 'BRIC',
'argentina': 'Argentina',
'australia': 'Australia',
'bahamas': 'Bahamas',
'belgium': 'Belgium',
'benelux': 'BeNeLux',
'bermuda': 'Bermuda',
'brazil': 'Brazil',
'canada': 'Canada',
'caymanislands': 'Cayman Islands',
'chile': 'Chile',
'china': 'China',
'chinahongkong': 'China & Hong Kong',
'colombia': 'Colombia',
'cyprus': 'Cyprus',
'denmark': 'Denmark',
'finland': 'Finland',
'france': 'France',
'germany': 'Germany',
'greece': 'Greece',
'hongkong': 'Hong Kong',
'hungary': 'Hungary',
'iceland': 'Iceland',
'india': 'India',
'indonesia': 'Indonesia',
'ireland': 'Ireland',
'israel': 'Israel',
'italy': 'Italy',
'japan': 'Japan',
'jordan': 'Jordan',
'kazakhstan': 'Kazakhstan',
'luxembourg': 'Luxembourg',
'malaysia': 'Malaysia',
'malta': 'Malta',
'mexico': 'Mexico',
'monaco': 'Monaco',
'netherlands': 'Netherlands',
'newzealand': 'New Zealand',
'norway': 'Norway',
'panama': 'Panama',
'peru': 'Peru',
'philippines': 'Philippines',
'portugal': 'Portugal',
'russia': 'Russia',
'singapore': 'Singapore',
'southafrica': 'South Africa',
'southkorea': 'South Korea',
'spain': 'Spain',
'sweden': 'Sweden',
'switzerland': 'Switzerland',
'taiwan': 'Taiwan',
'thailand': 'Thailand',
'turkey': 'Turkey',
'unitedarabemirates': 'United Arab Emirates',
'unitedkingdom': 'United Kingdom',
'uruguay': 'Uruguay',
'vietnam': 'Vietnam',
'modal': 'Custom'
}
# Market Capitalization (時価総額) - cap
MARKET_CAP_VALUES = {
'': 'Any',
'mega': 'Mega ($200bln and more)',
'large': 'Large ($10bln to $200bln)',
'mid': 'Mid ($2bln to $10bln)',
'small': 'Small ($300mln to $2bln)',
'micro': 'Micro ($50mln to $300mln)',
'nano': 'Nano (under $50mln)',
'largeover': '+Large (over $10bln)',
'midover': '+Mid (over $2bln)',
'smallover': '+Small (over $300mln)',
'microover': '+Micro (over $50mln)',
'largeunder': '-Large (under $200bln)',
'midunder': '-Mid (under $10bln)',
'smallunder': '-Small (under $2bln)',
'microunder': '-Micro (under $300mln)',
'frange': 'Custom'
}
# Price (株価) - sh_price
PRICE_VALUES = {
'': 'Any',
'u1': 'Under $1',
'u2': 'Under $2',
'u3': 'Under $3',
'u4': 'Under $4',
'u5': 'Under $5',
'u7': 'Under $7',
'u10': 'Under $10',
'u15': 'Under $15',
'u20': 'Under $20',
'u30': 'Under $30',
'u40': 'Under $40',
'u50': 'Under $50',
'o1': 'Over $1',
'o2': 'Over $2',
'o3': 'Over $3',
'o4': 'Over $4',
'o5': 'Over $5',
'o7': 'Over $7',
'o10': 'Over $10',
'o15': 'Over $15',
'o20': 'Over $20',
'o30': 'Over $30',
'o40': 'Over $40',
'o50': 'Over $50',
'o60': 'Over $60',
'o70': 'Over $70',
'o80': 'Over $80',
'o90': 'Over $90',
'o100': 'Over $100',
'1to5': '$1 to $5',
'1to10': '$1 to $10',
'1to20': '$1 to $20',
'5to10': '$5 to $10',
'5to20': '$5 to $20',
'5to50': '$5 to $50',
'10to20': '$10 to $20',
'10to50': '$10 to $50',
'20to50': '$20 to $50',
'50to100': '$50 to $100',
'frange': 'Custom'
}
# Target Price (目標価格) - targetprice
TARGET_PRICE_VALUES = {
'': 'Any',
'a50': '50% Above Price',
'a40': '40% Above Price',
'a30': '30% Above Price',
'a20': '20% Above Price',
'a10': '10% Above Price',
'a5': '5% Above Price',
'above': 'Above Price',
'below': 'Below Price',
'b5': '5% Below Price',
'b10': '10% Below Price',
'b20': '20% Below Price',
'b30': '30% Below Price',
'b40': '40% Below Price',
'b50': '50% Below Price',
'modal': 'Custom'
}
# Dividend Yield (配当利回り) - fa_div
DIVIDEND_YIELD_VALUES = {
'': 'Any',
'none': 'None (0%)',
'pos': 'Positive (>0%)',
'high': 'High (>5%)',
'veryhigh': 'Very High (>10%)',
'o1': 'Over 1%',
'o2': 'Over 2%',
'o3': 'Over 3%',
'o4': 'Over 4%',
'o5': 'Over 5%',
'o6': 'Over 6%',
'o7': 'Over 7%',
'o8': 'Over 8%',
'o9': 'Over 9%',
'o10': 'Over 10%',
'frange': 'Custom'
}
# Short Float (ショート比率) - sh_short
SHORT_FLOAT_VALUES = {
'': 'Any',
'low': 'Low (<5%)',
'high': 'High (>20%)',
'u5': 'Under 5%',
'u10': 'Under 10%',
'u15': 'Under 15%',
'u20': 'Under 20%',
'u25': 'Under 25%',
'u30': 'Under 30%',
'o5': 'Over 5%',
'o10': 'Over 10%',
'o15': 'Over 15%',
'o20': 'Over 20%',
'o25': 'Over 25%',
'o30': 'Over 30%',
'frange': 'Custom'
}
# Analyst Recommendation (アナリスト推奨) - an_recom
ANALYST_RECOMMENDATION_VALUES = {
'': 'Any',
'strongbuy': 'Strong Buy (1)',
'buybetter': 'Buy or better',
'buy': 'Buy',
'holdbetter': 'Hold or better',
'hold': 'Hold',
'holdworse': 'Hold or worse',
'sell': 'Sell',
'sellworse': 'Sell or worse',
'strongsell': 'Strong Sell (5)',
'modal': 'Custom'
}
# Option/Short (オプション/ショート) - sh_opt
OPTION_SHORT_VALUES = {
'': 'Any',
'option': 'Optionable',
'short': 'Shortable',
'notoption': 'Not optionable',
'notshort': 'Not shortable',
'optionshort': 'Optionable and shortable',
'optionnotshort': 'Optionable and not shortable',
'notoptionshort': 'Not optionable and shortable',
'notoptionnotshort': 'Not optionable and not shortable',
'shortsalerestricted': 'Short sale restricted',
'notshortsalerestricted': 'Not short sale restricted',
'halted': 'Halted',
'nothalted': 'Not halted',
'so10k': 'Over 10K available to short',
'so100k': 'Over 100K available to short',
'so1m': 'Over 1M available to short',
'so10m': 'Over 10M available to short',
'uo1m': 'Over $1M available to short',
'uo10m': 'Over $10M available to short',
'uo100m': 'Over $100M available to short',
'uo1b': 'Over $1B available to short',
'modal': 'Custom'
}
# Earnings Date (決算日) - earningsdate
EARNINGS_DATE_VALUES = {
'': 'Any',
'today': 'Today',
'todaybefore': 'Today Before Market Open',
'todayafter': 'Today After Market Close',
'tomorrow': 'Tomorrow',
'tomorrowbefore': 'Tomorrow Before Market Open',
'tomorrowafter': 'Tomorrow After Market Close',
'yesterday': 'Yesterday',
'yesterdaybefore': 'Yesterday Before Market Open',
'yesterdayafter': 'Yesterday After Market Close',
'nextdays5': 'Next 5 Days',
'prevdays5': 'Previous 5 Days',
'thisweek': 'This Week',
'nextweek': 'Next Week',
'prevweek': 'Previous Week',
'thismonth': 'This Month',
'modal': 'Custom'
}
# IPO Date (IPO日) - ipodate
IPO_DATE_VALUES = {
'': 'Any',
'today': 'Today',
'yesterday': 'Yesterday',
'prevweek': 'In the last week',
'prevmonth': 'In the last month',
'prevquarter': 'In the last quarter',
'prevyear': 'In the last year',
'prev2yrs': 'In the last 2 years',
'prev3yrs': 'In the last 3 years',
'prev5yrs': 'In the last 5 years',
'more1': 'More than a year ago',
'more5': 'More than 5 years ago',
'more10': 'More than 10 years ago',
'more15': 'More than 15 years ago',
'more20': 'More than 20 years ago',
'more25': 'More than 25 years ago',
'modal': 'Custom'
}
# Average Volume (平均出来高) - sh_avgvol
AVERAGE_VOLUME_VALUES = {
'': 'Any',
'u50': 'Under 50K',
'u100': 'Under 100K',
'u500': 'Under 500K',
'u750': 'Under 750K',
'u1000': 'Under 1M',
'o50': 'Over 50K',
'o100': 'Over 100K',
'o200': 'Over 200K',
'o300': 'Over 300K',
'o400': 'Over 400K',
'o500': 'Over 500K',
'o750': 'Over 750K',
'o1000': 'Over 1M',
'o2000': 'Over 2M',
'100to500': '100K to 500K',
'100to1000': '100K to 1M',
'500to1000': '500K to 1M',
'500to10000': '500K to 10M',
'frange': 'Custom'
}
# Relative Volume (相対出来高) - sh_relvol
RELATIVE_VOLUME_VALUES = {
'': 'Any',
'o10': 'Over 10',
'o5': 'Over 5',
'o3': 'Over 3',
'o2': 'Over 2',
'o1.5': 'Over 1.5',
'o1': 'Over 1',
'o0.75': 'Over 0.75',
'o0.5': 'Over 0.5',
'o0.25': 'Over 0.25',
'u2': 'Under 2',
'u1.5': 'Under 1.5',
'u1': 'Under 1',
'u0.75': 'Under 0.75',
'u0.5': 'Under 0.5',
'u0.25': 'Under 0.25',
'u0.1': 'Under 0.1',
'frange': 'Custom'
}
# Current Volume (当日出来高) - sh_curvol
CURRENT_VOLUME_VALUES = {
'': 'Any',
'u50': 'Under 50K',
'u100': 'Under 100K',
'u500': 'Under 500K',
'u750': 'Under 750K',
'u1000': 'Under 1M',
'o0': 'Over 0',
'o50': 'Over 50K',
'o100': 'Over 100K',
'o200': 'Over 200K',
'o300': 'Over 300K',
'o400': 'Over 400K',
'o500': 'Over 500K',
'o750': 'Over 750K',
'o1000': 'Over 1M',
'o2000': 'Over 2M',
'o5000': 'Over 5M',
'o10000': 'Over 10M',
'o20000': 'Over 20M',
'o50sf': 'Over 50% shares float',
'o100sf': 'Over 100% shares float',
'uusd1000': 'Under $1M',
'uusd10000': 'Under $10M',
'uusd100000': 'Under $100M',
'uusd1000000': 'Under $1B',
'ousd1000': 'Over $1M',
'ousd10000': 'Over $10M',
'ousd100000': 'Over $100M',
'ousd1000000': 'Over $1B',
'modal': 'Custom'
}
# Trades (取引回数) - sh_trades
TRADES_VALUES = {
'': 'Any',
'u100': 'Under 100',
'u500': 'Under 500',
'u1000': 'Under 1K',
'u5000': 'Under 5K',
'u10000': 'Under 10K',
'o0': 'Over 0',
'o100': 'Over 100',
'o500': 'Over 500',
'o1000': 'Over 1K',
'o5000': 'Over 5K',
'o10000': 'Over 10K',
'o15000': 'Over 15K',
'o20000': 'Over 20K',
'o50000': 'Over 50K',
'o100000': 'Over 100K',
'frange': 'Custom'
}
# Shares Outstanding (発行済株式数) - sh_outstanding
SHARES_OUTSTANDING_VALUES = {
'': 'Any',
'u1': 'Under 1M',
'u5': 'Under 5M',
'u10': 'Under 10M',
'u20': 'Under 20M',
'u50': 'Under 50M',
'u100': 'Under 100M',
'o1': 'Over 1M',
'o2': 'Over 2M',
'o5': 'Over 5M',
'o10': 'Over 10M',
'o20': 'Over 20M',
'o50': 'Over 50M',
'o100': 'Over 100M',
'o200': 'Over 200M',
'o500': 'Over 500M',
'o1000': 'Over 1000M',
'frange': 'Custom'
}
# Float (浮動株数) - sh_float
FLOAT_VALUES = {
'': 'Any',
'u1': 'Under 1M',
'u5': 'Under 5M',
'u10': 'Under 10M',
'u20': 'Under 20M',
'u50': 'Under 50M',
'u100': 'Under 100M',
'o1': 'Over 1M',
'o2': 'Over 2M',
'o5': 'Over 5M',
'o10': 'Over 10M',
'o20': 'Over 20M',
'o50': 'Over 50M',
'o100': 'Over 100M',
'o200': 'Over 200M',
'o500': 'Over 500M',
'o1000': 'Over 1000M',
'u10p': 'Under 10%',
'u20p': 'Under 20%',
'u30p': 'Under 30%',
'u40p': 'Under 40%',
'u50p': 'Under 50%',
'u60p': 'Under 60%',
'u70p': 'Under 70%',
'u80p': 'Under 80%',
'u90p': 'Under 90%',
'o10p': 'Over 10%',
'o20p': 'Over 20%',
'o30p': 'Over 30%',
'o40p': 'Over 40%',
'o50p': 'Over 50%',
'o60p': 'Over 60%',
'o70p': 'Over 70%',
'o80p': 'Over 80%',
'o90p': 'Over 90%',
'modal': 'Custom'
}
# All parameter collections for easy access
ALL_PARAMETERS = {
'exch': EXCHANGE_VALUES,
'idx': INDEX_VALUES,
'sec': SECTOR_VALUES,
'ind': INDUSTRY_VALUES,
'geo': COUNTRY_VALUES,
'cap': MARKET_CAP_VALUES,
'sh_price': PRICE_VALUES,
'targetprice': TARGET_PRICE_VALUES,
'fa_div': DIVIDEND_YIELD_VALUES,
'sh_short': SHORT_FLOAT_VALUES,
'an_recom': ANALYST_RECOMMENDATION_VALUES,
'sh_opt': OPTION_SHORT_VALUES,
'earningsdate': EARNINGS_DATE_VALUES,
'ipodate': IPO_DATE_VALUES,
'sh_avgvol': AVERAGE_VOLUME_VALUES,
'sh_relvol': RELATIVE_VOLUME_VALUES,
'sh_curvol': CURRENT_VOLUME_VALUES,
'sh_trades': TRADES_VALUES,
'sh_outstanding': SHARES_OUTSTANDING_VALUES,
'sh_float': FLOAT_VALUES
}
# Legacy mappings for backward compatibility
MARKET_CAP_FILTERS = list(MARKET_CAP_VALUES.keys())
# Finvizの包括的フィールドマッピング定数(カラム番号対応)
FINVIZ_COMPREHENSIVE_FIELD_MAPPING = {
# 基本情報 (0-9)
'no': {'csv_name': 'No.', 'column_id': 0},
'ticker': {'csv_name': 'Ticker', 'column_id': 1},
'company': {'csv_name': 'Company', 'column_id': 2},
'index': {'csv_name': 'Index', 'column_id': 3},
'sector': {'csv_name': 'Sector', 'column_id': 4},
'industry': {'csv_name': 'Industry', 'column_id': 5},
'country': {'csv_name': 'Country', 'column_id': 6},
'market_cap': {'csv_name': 'Market Cap', 'column_id': 7},
'pe_ratio': {'csv_name': 'P/E', 'column_id': 8},
'forward_pe': {'csv_name': 'Forward P/E', 'column_id': 9},
# バリュエーション指標 (10-19)
'peg': {'csv_name': 'PEG', 'column_id': 10},
'ps_ratio': {'csv_name': 'P/S', 'column_id': 11},
'pb_ratio': {'csv_name': 'P/B', 'column_id': 12},
'price_to_cash': {'csv_name': 'P/Cash', 'column_id': 13},
'price_to_free_cash_flow': {'csv_name': 'P/Free Cash Flow', 'column_id': 14},
'book_value_per_share': {'csv_name': 'Book/sh', 'column_id': 15},
'cash_per_share': {'csv_name': 'Cash/sh', 'column_id': 16},
'dividend': {'csv_name': 'Dividend', 'column_id': 17},
'dividend_yield': {'csv_name': 'Dividend Yield', 'column_id': 18},
'payout_ratio': {'csv_name': 'Payout Ratio', 'column_id': 19},
# 収益性指標 (20-29)
'eps': {'csv_name': 'EPS (ttm)', 'column_id': 20},
'eps_next_q': {'csv_name': 'EPS Next Q', 'column_id': 21},
'eps_growth_this_y': {'csv_name': 'EPS Growth This Year', 'column_id': 22},
'eps_growth_next_y': {'csv_name': 'EPS Growth Next Year', 'column_id': 23},
'eps_growth_past_5y': {'csv_name': 'EPS Growth Past 5 Years', 'column_id': 24},
'eps_growth_next_5y': {'csv_name': 'EPS Growth Next 5 Years', 'column_id': 25},
'sales_growth_past_5y': {'csv_name': 'Sales Growth Past 5 Years', 'column_id': 26},
'sales_growth_qtr': {'csv_name': 'Sales Growth Quarter Over Quarter', 'column_id': 27},
'eps_growth_qtr': {'csv_name': 'EPS Growth Quarter Over Quarter', 'column_id': 28},
'sales': {'csv_name': 'Sales', 'column_id': 29},
# 財務・決算関連 (30-39)
'income': {'csv_name': 'Income', 'column_id': 30},
'eps_surprise': {'csv_name': 'EPS Surprise', 'column_id': 31},
'revenue_surprise': {'csv_name': 'Revenue Surprise', 'column_id': 32},
'shares_outstanding': {'csv_name': 'Shares Outstanding', 'column_id': 33},
'shares_float': {'csv_name': 'Shares Float', 'column_id': 34},
'float_percentage': {'csv_name': 'Float %', 'column_id': 35},
'insider_ownership': {'csv_name': 'Insider Ownership', 'column_id': 36},
'insider_transactions': {'csv_name': 'Insider Transactions', 'column_id': 37},
'institutional_ownership': {'csv_name': 'Institutional Ownership', 'column_id': 38},
'institutional_transactions': {'csv_name': 'Institutional Transactions', 'column_id': 39},
# 空売り関連 (40-49)
'float_short': {'csv_name': 'Short Float', 'column_id': 40},
'short_ratio': {'csv_name': 'Short Ratio', 'column_id': 41},
'short_interest': {'csv_name': 'Short Interest', 'column_id': 42},
'roa': {'csv_name': 'Return on Assets', 'column_id': 43},
'roe': {'csv_name': 'Return on Equity', 'column_id': 44},
'roic': {'csv_name': 'Return on Invested Capital', 'column_id': 45},
'current_ratio': {'csv_name': 'Current Ratio', 'column_id': 46},
'quick_ratio': {'csv_name': 'Quick Ratio', 'column_id': 47},
'lt_debt_to_equity': {'csv_name': 'LT Debt/Equity', 'column_id': 48},
'debt_to_equity': {'csv_name': 'Total Debt/Equity', 'column_id': 49},
# 収益性マージン (50-59)
'gross_margin': {'csv_name': 'Gross Margin', 'column_id': 50},
'operating_margin': {'csv_name': 'Operating Margin', 'column_id': 51},
'profit_margin': {'csv_name': 'Profit Margin', 'column_id': 52},
'performance_1min': {'csv_name': 'Performance (1 Minute)', 'column_id': 53},
'performance_2min': {'csv_name': 'Performance (2 Minutes)', 'column_id': 54},
'performance_3min': {'csv_name': 'Performance (3 Minutes)', 'column_id': 55},
'performance_5min': {'csv_name': 'Performance (5 Minutes)', 'column_id': 56},
'performance_10min': {'csv_name': 'Performance (10 Minutes)', 'column_id': 57},
'performance_15min': {'csv_name': 'Performance (15 Minutes)', 'column_id': 58},
'performance_30min': {'csv_name': 'Performance (30 Minutes)', 'column_id': 59},
# パフォーマンス(時間単位〜長期) (60-69)
'performance_1h': {'csv_name': 'Performance (1 Hour)', 'column_id': 60},
'performance_2h': {'csv_name': 'Performance (2 Hours)', 'column_id': 61},
'performance_4h': {'csv_name': 'Performance (4 Hours)', 'column_id': 62},
'performance_1w': {'csv_name': 'Performance (Week)', 'column_id': 63},
'performance_1m': {'csv_name': 'Performance (Month)', 'column_id': 64},
'performance_3m': {'csv_name': 'Performance (Quarter)', 'column_id': 65},
'performance_6m': {'csv_name': 'Performance (Half Year)', 'column_id': 66},
'performance_1y': {'csv_name': 'Performance (Year)', 'column_id': 67},
'performance_ytd': {'csv_name': 'Performance (YTD)', 'column_id': 68},
'beta': {'csv_name': 'Beta', 'column_id': 69},
# テクニカル指標 (70-79)
'avg_true_range': {'csv_name': 'Average True Range', 'column_id': 70},
'volatility_week': {'csv_name': 'Volatility (Week)', 'column_id': 71},
'volatility_month': {'csv_name': 'Volatility (Month)', 'column_id': 72},
'sma_20': {'csv_name': '20-Day Simple Moving Average', 'column_id': 73},
'sma_50': {'csv_name': '50-Day Simple Moving Average', 'column_id': 74},
'sma_200': {'csv_name': '200-Day Simple Moving Average', 'column_id': 75},
'day_50_high': {'csv_name': '50-Day High', 'column_id': 76},
'day_50_low': {'csv_name': '50-Day Low', 'column_id': 77},
'week_52_high': {'csv_name': '52-Week High', 'column_id': 78},
'week_52_low': {'csv_name': '52-Week Low', 'column_id': 79},
# 株式・取引情報 (80-89)
'optionable': {'csv_name': 'Optionable', 'column_id': 80},
'shortable': {'csv_name': 'Shortable', 'column_id': 81},
'employees': {'csv_name': 'Employees', 'column_id': 82},
'change_from_open': {'csv_name': 'Change from Open', 'column_id': 83},
'gap': {'csv_name': 'Gap', 'column_id': 84},
'analyst_recommendation': {'csv_name': 'Analyst Recom', 'column_id': 85},
'avg_volume': {'csv_name': 'Average Volume', 'column_id': 86},
'relative_volume': {'csv_name': 'Relative Volume', 'column_id': 87},
'volume': {'csv_name': 'Volume', 'column_id': 88},
'trades_count': {'csv_name': 'Trades', 'column_id': 89},
# 価格情報 (90-99)
'target_price': {'csv_name': 'Target Price', 'column_id': 90},
'prev_close': {'csv_name': 'Prev Close', 'column_id': 91},
'open_price': {'csv_name': 'Open', 'column_id': 92},
'high_price': {'csv_name': 'High', 'column_id': 93},
'low_price': {'csv_name': 'Low', 'column_id': 94},
'price': {'csv_name': 'Price', 'column_id': 95},
'price_change': {'csv_name': 'Change', 'column_id': 96},
'afterhours_price': {'csv_name': 'After-Hours Close', 'column_id': 97},
'afterhours_change': {'csv_name': 'After-Hours Change', 'column_id': 98},
'single_category': {'csv_name': 'Single Category', 'column_id': 99},
# ETF専用フィールド (100-109)
'asset_type': {'csv_name': 'Asset Type', 'column_id': 100},
'etf_type': {'csv_name': 'ETF Type', 'column_id': 101},
'sector_theme': {'csv_name': 'Sector/Theme', 'column_id': 102},
'region': {'csv_name': 'Region', 'column_id': 103},
'active_passive': {'csv_name': 'Active/Passive', 'column_id': 104},
'net_expense_ratio': {'csv_name': 'Net Expense Ratio', 'column_id': 105},
'total_holdings': {'csv_name': 'Total Holdings', 'column_id': 106},
'aum': {'csv_name': 'Assets Under Management', 'column_id': 107},
'nav': {'csv_name': 'Net Asset Value', 'column_id': 108},
'all_time_high': {'csv_name': 'All-Time High', 'column_id': 109},
# ETF・その他追加フィールド (110-125)
'all_time_low': {'csv_name': 'All-Time Low', 'column_id': 110},
'rsi': {'csv_name': 'Relative Strength Index (14)', 'column_id': 111},
'earnings_date': {'csv_name': 'Earnings Date', 'column_id': 112},
'ipo_date': {'csv_name': 'IPO Date', 'column_id': 113},
'nav_percent': {'csv_name': 'Net Asset Value %', 'column_id': 114},
'net_flows_1m': {'csv_name': 'Net Flows (1 Month)', 'column_id': 115},
'net_flows_1m_percent': {'csv_name': 'Net Flows % (1 Month)', 'column_id': 116},
'net_flows_3m': {'csv_name': 'Net Flows (3 Month)', 'column_id': 117},
'net_flows_3m_percent': {'csv_name': 'Net Flows % (3 Month)', 'column_id': 118},
'net_flows_ytd': {'csv_name': 'Net Flows (YTD)', 'column_id': 119},
'net_flows_ytd_percent': {'csv_name': 'Net Flows % (YTD)', 'column_id': 120},
'net_flows_1y': {'csv_name': 'Net Flows (1 Year)', 'column_id': 121},
'net_flows_1y_percent': {'csv_name': 'Net Flows % (1 Year)', 'column_id': 122},
'performance_3y': {'csv_name': 'Return 3 Year', 'column_id': 123},
'performance_5y': {'csv_name': 'Return 5 Year', 'column_id': 124},
'performance_10y': {'csv_name': 'Return 10 Year', 'column_id': 125},
'performance_since_inception': {'csv_name': 'Return Since Inception', 'column_id': 126},
'tags': {'csv_name': 'Tags', 'column_id': 127}
}
# 全カラムを取得するためのCSVエクスポートパラメータ(更新版)
FINVIZ_ALL_COLUMNS_UPDATED = "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127"